読者です 読者をやめる 読者になる 読者になる

mysql のバイナリログ削除

ほっとくと mysql-bin.000023 というようなバイナリログが残り続ける。


削除するには
mysql にログインして「show master logs;」でログの状況を確認「purge master logs to 'mysql-bin.000093';」で000093までのログを削除となる。

root@mercury:/var/db/mysql # mysql -u root -p
Enter password:

mysql> show master logs;
+------------------+-----------+
| Log_name         | File_size |
+------------------+-----------+
| mysql-bin.000092 | 500253347 |
| mysql-bin.000093 |  73870550 |
| mysql-bin.000094 |     10546 |
+------------------+-----------+
3 rows in set (0.00 sec)

mysql> purge master logs to 'mysql-bin.000093';
Query OK, 0 rows affected (0.04 sec)

mysql> show master logs;
+------------------+-----------+
| Log_name         | File_size |
+------------------+-----------+
| mysql-bin.000093 |  73870550 |
| mysql-bin.000094 |     16046 |
+------------------+-----------+
2 rows in set (0.01 sec)

mysql> purge master logs to 'mysql-bin.000094';
Query OK, 0 rows affected (0.04 sec)

mysql> quit

もしくはmy.cnfに

[mysqld]
expire_logs_days = 7

で7日経過したログを自動削除するように設定する。