• Willkommen im Linux Club - dem deutschsprachigen Supportforum für GNU/Linux. Registriere dich kostenlos, um alle Inhalte zu sehen und Fragen zu stellen.

SQL-Server startet nicht nach Failover (DRBD + Heartbeat)

Kelah

Newbie
Ich bin dabei einen Backupserver für einen bereits bestehenden Server aufzusetzen, ich nutze dazu Debian Sarge.
darauf kommt DRBD (Protokoll C) zusammen mit Heartbeat zum Einsatz, was so konfiguriert ist, dass es im Fehlerfall u.a. auch den MySQL5 Server auf dem Backupserver startet.

Ich habe vorher ganz normal das mysql-server-5.0 Pakelt mit apt installiert und der Server lief auch. Nun habe ich den Dienst mit in Heartbeat eingegliedert und mal einen Fehlerfall simuliert. Seitdem startet der SQL Server nicht mehr.
Im syslog steht dazu das:

Code:
Mar 20 10:52:12 localhost mysqld_safe[9475]: started
Mar 20 10:52:12 localhost mysqld[9478]: 070320 10:52:12  InnoDB: Operating system error number 13 in a file operation.
Mar 20 10:52:12 localhost mysqld[9478]: InnoDB: The error means mysqld does not have the access rights to
Mar 20 10:52:12 localhost mysqld[9478]: InnoDB: the directory.
Mar 20 10:52:12 localhost mysqld[9478]: InnoDB: File name ./ib_logfile0
Mar 20 10:52:12 localhost mysqld[9478]: InnoDB: File operation call: 'open'.
Mar 20 10:52:12 localhost mysqld[9478]: InnoDB: Cannot continue operation.
Mar 20 10:52:12 localhost mysqld_safe[9484]: ended
Mar 20 10:52:26 localhost /etc/init.d/mysql[9619]: 0 processes alive and '/usr/bin/mysqladmin --defaults-file=/etc/mysql/debian.cnf ping' resulted in
Mar 20 10:52:26 localhost /etc/init.d/mysql[9619]: ^G/usr/bin/mysqladmin: connect to server at 'localhost' failed
Mar 20 10:52:26 localhost /etc/init.d/mysql[9619]: error: 'Can't connect to local MySQL server through socket '/var/run/mysqld/mysqld.sock' (2)'
Mar 20 10:52:26 localhost /etc/init.d/mysql[9619]: Check that mysqld is running and that the socket: '/var/run/mysqld/mysqld.sock' exists!

Ich habe bereits mehrfach den SQL Server neu installiert, Konfigs zwischen den Servern hin und hergeschoben, die debian.cnf auf den korrekten Pfad zu mysqld.sock überprüft etc.
Der Fehler, dass es mysqld.sock nicht finden kann dürfte aber Quatsch sein, da die Datei ja erst nach Start des Servers angelegt wirdo der irre ich mich?
Weiterhin habe ich auch überprüft ob der mysql Benutzer entsprechende Rechte in /var/lib/mysql hat, was auch der Fall ist.

Wenn ich den Server deinstalliere, manuell noch /etc/mysql lösche, mysql-server-5.0 wieder installiere, /etc/mysql vom anderen Server auf den Server kopiere und anschließend dpkg-reconfigure mysql-server-5.0 ausführe startet er übrigends wieder ohne jegliche Fehlermeldung (ich weiß das die Taktik "strange" ist, es war aus Herumprobiererei so entstanden Smile).
Somit schlussfolgere ich, dass es doch irgemdwie mit Heartbeat zusammenhängt.
Muss ich bei der Datensynchronisation per DRBD auf etwas spezielles achten bei mysql?
Er synchronisiert momentan bloß die Daten, keine Temps, etc., ist das so okay?

Ich sehe grade, dass der SQL Server nach einem kompletten Neustart des Backupservers auch wieder problemlos startet. Dann hat aber der andere Server wieder die Daten, also nützt mir das leider nichts. Komisch finde ich auch, dass auf dem primären Server alles bestens funktioniert obwohl doch alles gleich ist.

Wo ist mein Fehler :(
 
Oben