ブログ

おっと、MySQLバイナリログを削除しました

長い一日で疲れ果てて、間違いを犯してチーム全体に多大な時間を費やすこともあります。

昨日、私は次のリリースのMySQLバックアップサービスであるZRMでサポートされるさまざまなバックアップおよびリカバリ方法をテストしていました。 MySQLのZRMでは、MySQLサーバーでバイナリロギングを有効にする必要があります。テスト中にディスク領域が足りなくなり、バイナリログを削除しました。

誤って、MySQLサーバーで使用された最後のバイナリログを削除しました。MySQLサーバーは最新のバイナリログを使用してデーモンを実行しています。

ショートバージョン– MySQLサーバーをまったく起動できませんでした。

MySQLバイナリログを回復する:サーバーを起動しようとしたときのスタックトレース

$service mysqld start

061031 17:38:48 mysqldが起動しました

061031 17:38:48 InnoDB:開始。ログシーケンス番号14 1645228884

/ usr / libexec / mysqld:ファイル '/var/lib/mysql/mysql-bin.000017'が見つかりません(エラーコード:2)

061031 17:38:48 [エラー]ログを開くことができませんでした(ファイル '/var/lib/mysql/mysql-bin.000017'、errno 2)

061031 17:38:48 [エラー]ログファイルを開けませんでした

061031 17:38:48 [エラー] tcログを初期化できません

061031 17:38:48 [エラー]中止

061031 17:38:48 InnoDB:シャットダウンを開始しています…

061031 17:38:51 InnoDB:シャットダウンが完了しました。ログシーケンス番号14 1645228884

061031 17:38:51 [注] / usr / libexec / mysqld:シャットダウンが完了しました

061031 17:38:51 mysqldが終了しました

問題を解決する方法についてのアイディアをくれたAishwaryaに感謝します。バイナリログインデックスファイル(/var/lib/mysql/mysql-bin.index)には、最新のバイナリログファイルに関する情報が格納されます。インデックスファイルを削除すると、問題が解決します。もちろん、私はZRM for MySQLを使用してデータベースのバックアップを持っていて、バイナリログを削除する前の任意の時点に回復できました。

結論:ディスク容量を節約するために最新のバイナリログファイルを削除せず、定期的なバックアップを実行してください。 ZRMが推奨され、ここに リンク 詳細については

ディスカッションに参加

jaJapanese
en_USEnglish fr_FRFrench it_ITItalian es_ESSpanish de_DEGerman pt_BRPortuguese sv_SESwedish tr_TRTurkish nl_NLDutch pl_PLPolish zh_TWChinese id_IDIndonesian ko_KRKorean ms_MYMalay thThai jaJapanese