MySQL Probelm mit InnoDB beim Systemstart
Hallo zusammen,
leider gibt es für MySQL und/oder Serverdienste allgemein keine eigene Rubrik, daher schiebe ich es mal hier in Debian, da auf der betroffenen Maschine Debian läuft (die Moderatoren dürfen es gerne in eine passendere schieben).
Seit einiger Zeit gibt es auf der Maschine Probleme mit dem mysqld. Dieser startet zwar, der Port ist offen, allerdings lehnt er jeglichen Verbindungsversuch ab. Erst nach einem
funktioniert es problemlos. Da ich jetzt schon weiß, dass die Frage kommen wird, ob der Benutzer überhaupt von dem Port verbinden darf: ja, er darf. und nach o. g. Restart klappt es auch!
Der mysqld läuft,
Nach Sichtung der Logs scheint es ein Problem mit der InnoDB-Engine zu sein:
Im Allgemeinen soll man bei diesem Fehler die InooDB-Log Dateien unter /var/lib/mysql/ löschen und/oder in der my.cnf anpassen. Das haben wir bereits versucht und für [u]genau einen[/u] Systemstart funktioniert das auch. Aber dann taucht das Problem wieder auf...
Der mysqld wird in den Start/Stop-Scripten auch nur einmal aufgerufen. Daran kann es also auch nicht liegen.
Hier noch ein paar Auszüge:
Nun könnte ich natürlich beim Beenden des mysql oder vor dem Starten einfach die InnoDB-Log-Dateien löschen. Aber das wäre lediglich ein unschöner Workaround für ein weiterhin ungeklärtes Problem...
Leider bin ich nicht so tief in der MySQL-Materie, dass mir langsam die Ideen ausgehen. Woran könnte es noch liegen? Alle DBs sichern und den mysql neu installieren gehört eher nicht zu den favorisierten Lösungsansätzen...
vg
Bytecounter
leider gibt es für MySQL und/oder Serverdienste allgemein keine eigene Rubrik, daher schiebe ich es mal hier in Debian, da auf der betroffenen Maschine Debian läuft (die Moderatoren dürfen es gerne in eine passendere schieben).
Seit einiger Zeit gibt es auf der Maschine Probleme mit dem mysqld. Dieser startet zwar, der Port ist offen, allerdings lehnt er jeglichen Verbindungsversuch ab. Erst nach einem
service mysqld restart
funktioniert es problemlos. Da ich jetzt schon weiß, dass die Frage kommen wird, ob der Benutzer überhaupt von dem Port verbinden darf: ja, er darf. und nach o. g. Restart klappt es auch!
Der mysqld läuft,
Nach Sichtung der Logs scheint es ein Problem mit der InnoDB-Engine zu sein:
InnoDB: Check that you do not already have another mysqld process
InnoDB: using the same InnoDB data or log files.
150119 8:42:45 InnoDB: Unable to open the first data file
InnoDB: Error in opening ./ibdata1
150119 8:42:45 InnoDB: Operating system error number 11 in a file operation.
InnoDB: Error number 11 means 'Resource temporarily unavailable'.
InnoDB: Some operating system error numbers are described at
InnoDB: http://dev.mysql.com/doc/refman/5.5/en/operating-system-error-codes.html
150119 8:42:45 InnoDB: Could not open or create data files.
150119 8:42:45 InnoDB: If you tried to add new data files, and it failed here,
150119 8:42:45 InnoDB: you should now edit innodb_data_file_path in my.cnf back
150119 8:42:45 InnoDB: to what it was, and remove the new ibdata files InnoDB created
150119 8:42:45 InnoDB: in this failed attempt. InnoDB only wrote those files full of
150119 8:42:45 InnoDB: zeros, but did not yet use them in any way. But be careful: do not
150119 8:42:45 InnoDB: remove old data files which contain your precious data!
150119 8:42:45 [ERROR] Plugin 'InnoDB' init function returned error.
150119 8:42:45 [ERROR] Plugin 'InnoDB' registration as a STORAGE ENGINE failed.
150119 8:42:45 [ERROR] Unknown/unsupported storage engine: InnoDB
150119 8:42:45 [ERROR] Aborting
Im Allgemeinen soll man bei diesem Fehler die InooDB-Log Dateien unter /var/lib/mysql/ löschen und/oder in der my.cnf anpassen. Das haben wir bereits versucht und für [u]genau einen[/u] Systemstart funktioniert das auch. Aber dann taucht das Problem wieder auf...
Der mysqld wird in den Start/Stop-Scripten auch nur einmal aufgerufen. Daran kann es also auch nicht liegen.
Hier noch ein paar Auszüge:
#>ps -A |grep mysql
1370 ? 00:00:03 mysqld
#>lsof /var/lib/mysql/ib_logfile0
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
mysqld 1370 mysql 8uW REG 8,1 5242880 270311 /var/lib/mysql/ib_logfile0
#>lsof /var/lib/mysql/ib_logfile1
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
mysqld 1370 mysql 9uW REG 8,1 5242880 270312 /var/lib/mysql/ib_logfile1
Nun könnte ich natürlich beim Beenden des mysql oder vor dem Starten einfach die InnoDB-Log-Dateien löschen. Aber das wäre lediglich ein unschöner Workaround für ein weiterhin ungeklärtes Problem...
Leider bin ich nicht so tief in der MySQL-Materie, dass mir langsam die Ideen ausgehen. Woran könnte es noch liegen? Alle DBs sichern und den mysql neu installieren gehört eher nicht zu den favorisierten Lösungsansätzen...
vg
Bytecounter
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 260363
Url: https://administrator.de/contentid/260363
Ausgedruckt am: 22.11.2024 um 06:11 Uhr
2 Kommentare
Neuester Kommentar