如果想要关闭二进制mysql日志,可以在my.ini里把log-bin这行注释掉 要清二进制日志的话,在mysql开启了二进制日志的状态下,以root身份登录mysql以后执行下面两个命令之一:
purge master logs before '2020-1-1'; 清除指定日期之前的二进制日志 purge master logs to 'mysql-bin.000020'; 清除指定文件编号之前的二进制日志
今天看了下mysql的日志,3.5g,挺占空间的,果断清掉了~。。
root@xss:/usr/local/mysql/var# ls -liahtotal 3.5g57153761 drwx------ 4 mysql mysql 4.0k mar 12 17:28 .57147488 drwxr-xr-x 11 root mysql 4.0k jan 31 14:31 ..57158026 -rw-rw---- 1 mysql mysql 5.0m mar 12 17:28 ib_logfile057158038 -rw-rw---- 1 mysql mysql 5.0m mar 6 12:36 ib_logfile157156045 -rw-rw---- 1 mysql mysql 10m mar 12 17:26 ibdata157153762 drwx------ 2 mysql mysql 4.0k feb 1 13:06 mysql57153766 -rw-rw---- 1 mysql mysql 19k jan 31 14:31 mysql-bin.00000157153836 -rw-rw---- 1 mysql mysql 718k jan 31 14:31 mysql-bin.00000257153838 -rw-rw---- 1 mysql mysql 865 jan 31 14:31 mysql-bin.00000357153837 -rw-rw---- 1 mysql mysql 125 jan 31 14:31 mysql-bin.00000457154285 -rw-rw---- 1 mysql mysql 125 jan 31 15:10 mysql-bin.00000557154295 -rw-rw---- 1 mysql mysql 125 feb 1 03:01 mysql-bin.00000657171378 -rw-rw---- 1 mysql mysql 377m feb 1 11:39 mysql-bin.00000757154853 -rw-rw---- 1 mysql mysql 20k feb 1 13:01 mysql-bin.00000857153937 -rw-rw---- 1 mysql mysql 378m feb 1 13:08 mysql-bin.00000957154819 -rw-rw---- 1 mysql mysql 11m feb 1 15:04 mysql-bin.00001057154283 -rw-rw---- 1 mysql mysql 303m feb 4 16:48 mysql-bin.00001157156109 -rw-rw---- 1 mysql mysql 1.1g feb 15 23:23 mysql-bin.00001257156229 -rw-rw---- 1 mysql mysql 517m feb 23 10:55 mysql-bin.00001357158984 -rw-rw---- 1 mysql mysql 318m feb 27 14:23 mysql-bin.00001457158040 -rw-rw---- 1 mysql mysql 269k feb 27 14:26 mysql-bin.00001557158042 -rw-rw---- 1 mysql mysql 290m mar 3 04:22 mysql-bin.00001657158070 -rw-rw---- 1 mysql mysql 133m mar 4 09:44 mysql-bin.00001757164854 -rw-rw---- 1 mysql mysql 71m mar 5 22:18 mysql-bin.00001857164965 -rw-rw---- 1 mysql mysql 498 mar 5 22:18 mysql-bin.00001957164967 -rw-rw---- 1 mysql mysql 106 mar 5 22:18 mysql-bin.00002057164977 -rw-rw---- 1 mysql mysql 106 mar 5 22:18 mysql-bin.00002157164978 -rw-rw---- 1 mysql mysql 106 mar 5 22:18 mysql-bin.00002257164979 -rw-rw---- 1 mysql mysql 106 mar 5 22:18 mysql-bin.00002357164980 -rw-rw---- 1 mysql mysql 106 mar 5 22:18 mysql-bin.00002457164981 -rw-rw---- 1 mysql mysql 106 mar 5 22:18 mysql-bin.00002557164982 -rw-rw---- 1 mysql mysql 7.7k mar 5 22:18 mysql-bin.00002657158115 -rw-rw---- 1 mysql mysql 4.3m mar 6 14:39 mysql-bin.00002757158073 -rw-rw---- 1 mysql mysql 24m mar 6 23:46 mysql-bin.00002857164848 -rw-rw---- 1 mysql mysql 93m mar 8 18:03 mysql-bin.00002957153914 -rw-rw---- 1 mysql mysql 8.9m mar 8 22:05 mysql-bin.00003057158178 -rw-rw---- 1 mysql mysql 5.6m mar 11 12:16 mysql-bin.00003157158151 -rw-rw---- 1 mysql mysql 164k mar 12 17:22 mysql-bin.00003257158175 -rw-rw---- 1 mysql mysql 712 mar 12 17:26 mysql-bin.00003357153942 -rw-rw---- 1 mysql mysql 106 mar 12 17:28 mysql-bin.00003457153764 -rw-rw---- 1 mysql mysql 646 mar 12 17:28 mysql-bin.index57154807 drwx------ 2 mysql mysql 4.0k feb 1 13:06 xss57153835 -rw-rw---- 1 mysql root 3.2k mar 12 17:28 xss.err57153915 -rw-rw---- 1 mysql mysql 4 mar 12 17:28 xss.pid
看到日志最后编号是000034,命令如下:
mysql> purge master logs to 'mysql-bin.034'; error 1373 (hy000): target log not found in binlog indexmysql> purge master logs to 'mysql-bin.000034'; query ok, 0 rows affected (0.53 sec)
再ls看看目录:
root@xss:/usr/local/mysql/var# ls -liahtotal 21m57153761 drwx------ 4 mysql mysql 4.0k mar 12 17:31 .57147488 drwxr-xr-x 11 root mysql 4.0k jan 31 14:31 ..57158026 -rw-rw---- 1 mysql mysql 5.0m mar 12 17:28 ib_logfile057158038 -rw-rw---- 1 mysql mysql 5.0m mar 6 12:36 ib_logfile157156045 -rw-rw---- 1 mysql mysql 10m mar 12 17:26 ibdata157153762 drwx------ 2 mysql mysql 4.0k feb 1 13:06 mysql57153942 -rw-rw---- 1 mysql mysql 106 mar 12 17:28 mysql-bin.00003457153764 -rw-rw---- 1 mysql mysql 19 mar 12 17:31 mysql-bin.index57154807 drwx------ 2 mysql mysql 4.0k feb 1 13:06 xss57153835 -rw-rw---- 1 mysql root 3.3k mar 12 17:31 xss.err57153915 -rw-rw---- 1 mysql mysql 4 mar 12 17:28 xss.pid
清掉了,剩下了000034。
原文地址:mysql清除日志, 感谢原作者分享。
