巨大なBinary logが生成されディスクフルになった場合 - MySQL

この記事は2006年11月06日に書かれたものです。

MySQLはデータを更新する際に、バイナリログにその記録を残す。 リストアなどをする際に用いることが可能だが、大量のINSERTやUPDATEが飛び交っていると、知らないうちに数Gバイトものファイルになっていることがある。

そのため定期的にディスクから削除などを行う必要が出てくる。ディスクフルになった場合は、これらのファイルを疑ってみると原因をつきとめることができることもある。

バイナリログの削除

バイナリログを削除するには、通常は以下のようなコマンドを叩くだけでOK。

$ mysql -u mysql -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 532 to server version: 4.0.25-standard-log

Type 'help;' or '\h' for help. Type '\c' to clear the buffer.

mysql> RESET MASTER;
Query OK, 0 rows affected (1.65 sec)

mysql> exit

バイナリログは通常、「/var/lib/mysql」といったデータディレクトリ配下に、「ホスト名-bin」といった名前で作成される。ある一定容量を超えると、ファイル名の末尾に連番をつけて別のファイルが作成される。  ※「一定容量」は「max_binlog_size」の値を調整することで変更が可能。   またサーバを再起動しても別ファイルが作成される。

ディィスクフルなど1分1秒を争う緊急時にはどうしようもないが、必要があれば削除する前にこれらのデータのバックアップを取っておいた方が良いだろう。

関連

4.10.4. バイナリログ http://dev.mysql.com/doc/refman/4.1/ja/binary-log.html

バイナリログは、以前の更新ログの代わりになるものです。更新ログは MySQL 5.0 でなくなります。バイナリログには、更新ログで利用可能だった情報がすべて、より効率的かつトランザクションセーフな方法で含まれます。

関連書籍

奥野 幹也
ISBN 4774142948
¥ 2,957

failed to fetch data: unkown error

Bill Karwin
ISBN 4873115892
¥ 3,456

failed to fetch data: unkown error

コメント

コメントを入力. Wiki文法が有効です:
Y K I S J