Server startet nicht mehr

Wichtiger Hinweis: Bitte ändert nicht manuell die Schriftfarbe auf schwarz sondern belasst es bei der Standardeinstellung. Somit tragt ihr dazu bei dass euer Text auch bei Verwendung unseren dunklen Forenstils noch lesbar ist!

Tipp: Ihr wollt längere Codeausschnitte oder Logfiles bereitstellen? Benutzt unseren eigenen PasteBin-Dienst Link
  • Hey aus irgendeinem Grund startet mein Server nicht mehr meine MySQL Daten:


    //==========================================[MySQL Einstellungen]==========================================//
    #define MYSQL_HOST "localhost" //IP Adresse des MySQL Servers //
    #define MYSQL_USER "root" //Benutzername der angemeldet wird //
    #define MYSQL_PASS "" //Passwort des Benutzers //
    #define MYSQL_DBSE "samb_db" //Name der Datenbank //
    new MySQL:handle; //Die Connection-Handle, über die wir später auf die Tabellen der Datenbank zugreifen // //
    //=========================================================================================================//


    habe auch schon 127.0.0.1 versucht so wie es eigentlich auch war...


    Server logs spuckt das hier aus:


    ----------
    Loaded log file: "server_log.txt".
    ----------


    SA-MP Dedicated Server
    ----------------------
    v0.3.7-R2, (C)2005-2015 SA-MP Team


    [15:25:38]
    [15:25:38] Server Plugins
    [15:25:38] --------------
    [15:25:38] Loading plugin: crashdetect
    [15:25:38] CrashDetect v4.18.1 is OK.
    [15:25:38] Loaded.
    [15:25:38] Loading plugin: mysql
    [15:25:38] >> plugin.mysql: R41-3 successfully loaded.
    [15:25:38] Loaded.
    [15:25:38] Loading plugin: sscanf
    [15:25:38]


    [15:25:38] ===============================


    [15:25:38] sscanf plugin loaded.


    [15:25:38] (c) 2009 Alex "Y_Less" Cole


    [15:25:38] 0.3d-R2 500 Players "dnee"


    [15:25:38] ===============================


    [15:25:38] Loaded.
    [15:25:38] Loading plugin: streamer
    [15:25:38]


    *** Streamer Plugin v2.9.1 by Incognito loaded ***


    [15:25:38] Loaded.
    [15:25:38] Loaded 4 plugins.


    [15:25:38]
    [15:25:38] Filterscripts
    [15:25:38] ---------------
    [15:25:38] Loading filterscript 'vspawner.amx'...
    [15:25:38]
    --Admin Vehicle Spawner Loaded


    [15:25:39] Loaded 1 filterscripts.


    [15:25:39] [MySQL] Verbindungsaufbau...
    [15:25:39] [MySQL] Es konnte keine Verbindung zur Datenbank hergestellt werden.
    [15:25:39] [MySQL] Starte neuen Verbindungsversuch (TTL: 2).
    [15:25:39] [MySQL] Verbindungsaufbau...
    [15:25:39] [MySQL] Es konnte keine Verbindung zur Datenbank hergestellt werden.
    [15:25:39] [MySQL] Starte neuen Verbindungsversuch (TTL: 1).
    [15:25:39] [MySQL] Verbindungsaufbau...
    [15:25:39] [MySQL] Es konnte keine Verbindung zur Datenbank hergestellt werden.
    [15:25:39] [MySQL] Bitte prüfen Sie die Verbindungsdaten.
    [15:25:39] [MySQL] Der Server wird heruntergefahren.
    [15:25:39]
    -----------------------------------------
    [15:25:39] German-Reallife wurde Vollständig geladen
    [15:25:39] -----------------------------------------


    [15:25:39] Number of vehicle models: 1
    [15:25:39] --- Server Shutting Down.
    [15:25:39] plugin.mysql: Unloading plugin...
    [15:25:39] plugin.mysql: Plugin unloaded.
    [15:25:39]


    [15:25:39] ===============================


    [15:25:39] sscanf plugin unloaded.


    [15:25:39] ===============================


    [15:25:39]


    *** Streamer Plugin v2.9.1 by Incognito unloaded ***

  • Da crashdetect nichts registriert hat, ist dies kein Fehler, sondern gewollt.


    Schau eventuell mal in deinem Skript nach SendRconCommand("exit"); anscheinend, steht das da drinnen, sodass sich dein Server wieder abschaltet :)

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • @Kaliber Ja das habe ich gefunden aber doch nur wenn keine Verbindung hergestellt wurde ?(
    hier vielleicht sagt dir das ja was:


    stock MySQL_SetupConnection(ttl = 3)
    {
    print("[MySQL] Verbindungsaufbau...");
    //mysql_log(); //<- Kommentar vor mysql_log entfernen um den MySQL Debug-Modus zu aktivieren
    handle = mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS, MYSQL_DBSE);
    if(mysql_errno(handle) != 0)//Prüfen und gegebenenfalls wiederholen
    {
    if(ttl > 1) //Fehler im Verbindungsaufbau, prüfe ob ein weiterer Versuch gestartet werden soll
    {
    print("[MySQL] Es konnte keine Verbindung zur Datenbank hergestellt werden.");//Versuche erneut eine Verbindung aufzubauen
    printf("[MySQL] Starte neuen Verbindungsversuch (TTL: %d).", ttl-1);
    return MySQL_SetupConnection(ttl-1);
    }
    else
    {
    //Abbrechen und Server schließen
    print("[MySQL] Es konnte keine Verbindung zur Datenbank hergestellt werden.");
    print("[MySQL] Bitte prüfen Sie die Verbindungsdaten.");
    print("[MySQL] Der Server wird heruntergefahren.");
    return SendRconCommand("exit");
    }
    }
    printf("[MySQL] Die Verbindung zur Datenbank wurde erfolgreich hergestellt! Handle: %d", _:handle);
    return 1;
    }

  • [15:25:39] [MySQL] Es konnte keine Verbindung zur Datenbank hergestellt werden.
    [15:25:39] [MySQL] Bitte prüfen Sie die Verbindungsdaten.
    [15:25:39] [MySQL] Der Server wird heruntergefahren.

    Und siehe da, es steht im Log und deshalb fährt der Server hinunter.


    Offensichtlich ist etwas mit den Daten falsch.


    Ich glaube mich zu erinnern, dass das Passwort nicht leer sein darf bei SA:MP.
    Also erstelle im PHPMyAdmin Panel o.ä. einen neuen Benutzer mit Passwort und verwende diese Daten :)

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • @Kaliber ging bei mir sonst auch ohne passwort naja wenn das so ist wo kann ich denn bei PHPMyAdmin das Passwort etc festlegen

    Naja, da gibt es oben den Punkt Benutzerkonten...und dort gibt es dann Benutzerkonto hinzufügen


    Dort wählst du dann den Benutzernamen aus, beim Hostname, wähle lokal aus. (des wichtig)


    und dann einfach noch Passwort und die Rechte die dieser Benutzer haben soll :)

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S

  • Und siehe da, es steht im Log und deshalb fährt der Server hinunter.
    Offensichtlich ist etwas mit den Daten falsch.


    Ich glaube mich zu erinnern, dass das Passwort nicht leer sein darf bei SA:MP.
    Also erstelle im PHPMyAdmin Panel o.ä. einen neuen Benutzer mit Passwort und verwende diese Daten :)

    Das PlugIn von BlueG hat keine Probleme mit einem Verbindungsaufbau ohne Passwort (sofern der Benutzer kein Passwort festgelegt hat).


    Als Host trag mal 127.0.0.1 an und stell das Debug level auf ALL (siehe Code, direkt vor mysql_connect hinzufügen). Starte den Server neu und zeige uns deinen mysql log.

    Code
    mysql_log(ALL);
  • @Douq hab ich gemacht also so:
    stock MySQL_SetupConnection(ttl = 3)
    {
    print("[MySQL] Verbindungsaufbau...");
    mysql_log(ALL); //<- Kommentar vor mysql_log entfernen um den MySQL Debug-Modus zu aktivieren
    handle = mysql_connect(MYSQL_HOST, MYSQL_USER, MYSQL_PASS, MYSQL_DBSE);
    if(mysql_errno(handle) != 0)//Prüfen und gegebenenfalls wiederholen
    {
    if(ttl > 1) //Fehler im Verbindungsaufbau, prüfe ob ein weiterer Versuch gestartet werden soll
    {
    print("[MySQL] Es konnte keine Verbindung zur Datenbank hergestellt werden.");//Versuche erneut eine Verbindung aufzubauen
    printf("[MySQL] Starte neuen Verbindungsversuch (TTL: %d).", ttl-1);
    return MySQL_SetupConnection(ttl-1);
    }
    else
    {
    //Abbrechen und Server schließen
    print("[MySQL] Es konnte keine Verbindung zur Datenbank hergestellt werden.");
    print("[MySQL] Bitte prüfen Sie die Verbindungsdaten.");
    print("[MySQL] Der Server wird heruntergefahren.");
    SendRconCommand("exit");
    }
    }
    printf("[MySQL] Die Verbindung zur Datenbank wurde erfolgreich hergestellt! Handle: %d", _:handle);
    return 1;
    }



    dabei kam das raus:


    ----------
    Loaded log file: "server_log.txt".
    ----------


    SA-MP Dedicated Server
    ----------------------
    v0.3.7-R2, (C)2005-2015 SA-MP Team


    [16:51:56]
    [16:51:56] Server Plugins
    [16:51:56] --------------
    [16:51:56] Loading plugin: crashdetect
    [16:51:56] CrashDetect v4.18.1 is OK.
    [16:51:56] Loaded.
    [16:51:56] Loading plugin: mysql
    [16:51:56] >> plugin.mysql: R41-3 successfully loaded.
    [16:51:56] Loaded.
    [16:51:56] Loading plugin: sscanf
    [16:51:56]


    [16:51:56] ===============================


    [16:51:56] sscanf plugin loaded.


    [16:51:56] (c) 2009 Alex "Y_Less" Cole


    [16:51:56] 0.3d-R2 500 Players "dnee"


    [16:51:56] ===============================


    [16:51:56] Loaded.
    [16:51:56] Loading plugin: streamer
    [16:51:56]


    *** Streamer Plugin v2.9.1 by Incognito loaded ***


    [16:51:56] Loaded.
    [16:51:56] Loaded 4 plugins.


    [16:51:56]
    [16:51:56] Filterscripts
    [16:51:56] ---------------
    [16:51:56] Loading filterscript 'vspawner.amx'...
    [16:51:56]
    --Admin Vehicle Spawner Loaded


    [16:51:56] Loaded 1 filterscripts.


    [16:51:56] [MySQL] Verbindungsaufbau...
    [16:51:57] [MySQL] Es konnte keine Verbindung zur Datenbank hergestellt werden.
    [16:51:57] [MySQL] Starte neuen Verbindungsversuch (TTL: 2).
    [16:51:57] [MySQL] Verbindungsaufbau...
    [16:51:57] [MySQL] Es konnte keine Verbindung zur Datenbank hergestellt werden.
    [16:51:57] [MySQL] Starte neuen Verbindungsversuch (TTL: 1).
    [16:51:57] [MySQL] Verbindungsaufbau...
    [16:51:57] [MySQL] Es konnte keine Verbindung zur Datenbank hergestellt werden.
    [16:51:57] [MySQL] Bitte prüfen Sie die Verbindungsdaten.
    [16:51:57] [MySQL] Der Server wird heruntergefahren.
    [16:51:57] [MySQL] Die Verbindung zur Datenbank wurde erfolgreich hergestellt! Handle: 1
    [16:51:57]
    -----------------------------------------
    [16:51:57] German-Reallife wurde Vollständig geladen
    [16:51:57] -----------------------------------------


    [16:51:57] Number of vehicle models: 1
    [16:51:57] --- Server Shutting Down.
    [16:51:57] plugin.mysql: Unloading plugin...
    [16:51:57] plugin.mysql: Plugin unloaded.
    [16:51:57]


    [16:51:57] ===============================


    [16:51:57] sscanf plugin unloaded.


    [16:51:57] ===============================


    [16:51:57]


    *** Streamer Plugin v2.9.1 by Incognito unloaded ***


    und als MySQL kram benutze ich das hier jetzt:


    //==========================================[MySQL Einstellungen]==========================================//
    #define MYSQL_HOST "127.0.0.1" //IP Adresse des MySQL Servers //
    #define MYSQL_USER "root" //Benutzername der angemeldet wird //
    #define MYSQL_PASS "" //Passwort des Benutzers //
    #define MYSQL_DBSE "samb_db" //Name der Datenbank //
    new MySQL:handle; //Die Connection-Handle, über die wir später auf die Tabellen der Datenbank zugreifen // //
    //=========================================================================================================//

  • Sorry für die späte antwort aber es hatte echt überhaupt nichts mit dem SendRconCommand("exit"); zu tun


    Habe mal ein wenig in die Logs geschaut und dann stand da das:
    [08:24:08] [plugins/mysql] CConnection::CConnection - establishing connection to MySQL database failed: #1049 'Unknown database 'samb_db''
    [08:24:08] [plugins/mysql] CConnection::CConnection - establishing connection to MySQL database failed: #1049 'Unknown database 'samb_db''
    [08:24:08] [plugins/mysql] CConnection::CConnection - establishing connection to MySQL database failed: #1049 'Unknown database 'samb_db''
    [08:24:08] [plugins/mysql] CConnection::CConnection - establishing connection to MySQL database failed: #1049 'Unknown database 'samb_db''



    so sah es im Script aus:
    http://prntscr.com/giycr6


    und habe es zu dem geändert.


    http://prntscr.com/giydpi


    und hat wieder geklappt danke euch allen für die Hilfsversuche :)

  • Sorry für die späte antwort aber es hatte echt überhaupt nichts mit dem

    Doch natürlich...das hat deinen Server heruntergefahren.


    Der Fehlschlag vom mysql_connect hat dafür gesorgt, dass genau SendRconCommand("exit"); aufgerufen wurde.


    Der Fehlschlag wurde halt eben nicht durch die falschen Login-Daten ausgelöst, sondern dadurch, dass du nicht die richtige Datenbank erstellt hattest. :)

    ast2ufdyxkb1.png


    Leute, lernt scripten und versucht mal lieber etwas selber zu schreiben, als es aus einem GF zu kopieren. :S