bytecounter
Goto Top

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
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

Content-ID: 260363

Url: https://administrator.de/contentid/260363

Ausgedruckt am: 22.11.2024 um 06:11 Uhr

carg
carg 26.01.2015 um 15:32:47 Uhr
Goto Top
Hi,

kann es sein, dass das log beim runterfahren nicht korrekt fertig geschrieben wird?
SET GLOBAL innodb_fast_shutdown=1;
so als Idee?

Wie sieht denn die my.cnf aus?

Grüße
bytecounter
bytecounter 29.01.2015 um 14:11:17 Uhr
Goto Top
Hallo,

Dieser Wert stand bereits auf 1. Allerdings tritt das Problem auch seit einigen Tagen nicht mehr auf. Die Ursache (und folglich Lösungsansätze) bleiben wohl (bis auf Weiteres) ungelöst...

vg
Bytecounter