Lösung: MySQL errcode 24 bei mysqldump
Heute bei der Arbeit bin ich wieder auf einen MySQL Fehler gestossen, der mir schon einmal untergekommen ist. Die Fehlermeldung:
mysqldump: Got error: 29: File './databasename/tablename.MYD' not found (Errcode: 24) when using LOCK TABLES
beim Dumpen größerer Datenmengen (vor allem vieler Tables) von der Kommandozeile.
Lösung:
Anhängen der Option --single-transaction an den mysqldump Befehl.
MySQL wirft den Fehler aufgrund der Option open_files_limit in der MySQL Konfiguration. --single-transaction beschränkt die Operation so, dass nicht gleichzeitig mehrere Tables offen sind. Tritt der Fehler nicht beim Dumpen, sondern im laufenden Betrieb auf, muss man den Wert von open_files_limit erhöhen.
