2012年3月12日月曜日

mysqlのバイナリログを日時指定で削除する


mysqlに[PURGE MASTER LOGS]というコマンドがあります。
マスタログを削除するものです。
このあとに[TO "バイナリログ名"]を入れると、そのログの前までを削除します。
これは良く使っていました。

ログファイル名ではなく、日時指定をすることもできます。

[PURGE MASTER LOGS BEFORE 'YYYY-mm-dd HH:ii:ss']

指定した日時より前のログが含まれるバイナリログが削除されます。
ただし、ログの途中が指定された場合は削除されません。



例えば、以下のバイナリログが残っているとします。

mysql-bin.0000001 (2012-03-01 - 2012-03-05のログ)
mysql-bin.0000002 (2012-03-05 - 2012-03-10のログ)



mysql> PURGE MASTER LOGS BEFORE '2012-03-06 00:00:00';
→mysql-bin.0000001が削除されます


mysql> PURGE MASTER LOGS BEFORE '2012-03-04 00:00:00';
→ログは削除されません

0 件のコメント:

コメントを投稿