WEBシステム開発・デザイン制作などすべての作業を一貫してご提供しております。(大阪・東京近辺)

Mysqlがクラッシュ!再起動しても直ぐにクラッシュして起動しない

移行中のサーバーで、簡単・お手軽にRsync(/var/lib/mysql/フォルダのコピー)を使って、MySQLデータベースサーバーを移行した際に、正常動作中のMySQLが突然クラッシュしてダウンしてしまった。

移行後、ほんの数分前までは快適に動作していたデータベースが、データベースの接続エラになったのだ。

データベースを再起動しても、起動中にエラーで失敗してしまう。

エラーログを確認してみると

/usr/libexec/mysqld: File ‘./mysql-bin.000085’ not found (Errcode: 2)
[ERROR] Failed to open log (file ‘./mysql-bin.000085’, errno 2)
[ERROR] Could not open log file
[ERROR] Can’t init tc log
[ERROR] Aborting
InnoDB: Starting shutdown…
InnoDB: Shutdown completed; log sequence number 150757546120
[Note] /usr/libexec/mysqld: Shutdown complete
mysqld_safe mysqld from pid file /var/run/mysqld/mysqld.pid ended

のエラーが出力されていた。

なるほど、原因はmysql-binだった。

Cronで定期的に、移行元のデータベースを同期させていたので、移行先が稼働しているにもかかわらず、データベースの同期が走っていた。

簡単にサーバー内のシステム一式を移行したまでは良かったが、最後にミスを犯してしまった。

問題となっているmysql-binを全てクリアし、破損してしまったテーブルをrepairし修復した。

反省の意味を込めて、明日一日は社内で頼まれた雑用はYesマンでいようと思った。

程々にお願いします