Purge BINARY logs on windows

If your like me and find that your windows MySQL server is filling up disk space with it's binary logs in a Master-Master replication setup, you will have to setup a script/routine to run the following each night.

First, set expire_logs_days to be 10 in my.cnf/ini (10 or 4 or whatever days you wish to keep you binary logs for)


Next, log in to mysql and run this
PURGE BINARY LOGS BEFORE (date(now()) + interval 0 second - interval 10 day);

Note the query's date and time
mysql> select date(now()) + interval 0 second - interval 10 day;
| date(now()) + interval 0 second - interval 10 day |
| 2012-12-11 00:00:00                               |
1 row in set (0.00 sec)

Thus, the PURGE BINARY LOGS command will delete all binlogs whose datetime stamp predates 2012-12-11 00:00:00.

Finally, run this command
SET GLOBAL expire_logs_days = 10;

That's it. No restart needed for installing expire_logs_days.

Please Register.

If you wish to add comments.