签到成功

知道了

CNDBA社区CNDBA社区

Mysql清理binlog日志

2021-11-27 08:46 1103 0 原创 mysql
作者: hbhe0316

1.在清理binlog日志之前,需要执行命令查看Master节点和slave节点http://www.cndba.cn/hbhe0316/article/22611http://www.cndba.cn/hbhe0316/article/22611http://www.cndba.cn/hbhe0316/article/22611

mysql> show master status/G
*************************** 1. row ***************************
             File: mysql-bin.000001
         Position: 154
     Binlog_Do_DB: 
 Binlog_Ignore_DB: 
Executed_Gtid_Set: 
1 row in set (0.00 sec)

mysql> show slave status/G
Empty set (0.00 sec)

2.清理执行日期前的binlog日志,清理2021-11-27日 8:20:00前的日志http://www.cndba.cn/hbhe0316/article/22611

mysql> purge master logs before '2021-11-27 08:20:00';
Query OK, 0 rows affected, 1 warning (0.00 sec)

3.清理指定binlog文件http://www.cndba.cn/hbhe0316/article/22611http://www.cndba.cn/hbhe0316/article/22611

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

4.手动执行flush logshttp://www.cndba.cn/hbhe0316/article/22611

mysql> flush logs;
Query OK, 0 rows affected (0.01 sec)

5.切记不能直接在操作系统上删除binlog日志,下面通过一个实验来说明:

mysql> show binary logs;
+------------------+-----------+
| Log_name         | File_size |
+------------------+-----------+
| mysql-bin.000001 |       201 |
| mysql-bin.000002 |       201 |
| mysql-bin.000003 |       201 |
| mysql-bin.000004 |       201 |
| mysql-bin.000005 |       201 |
| mysql-bin.000006 |       201 |
| mysql-bin.000007 |       201 |
| mysql-bin.000008 |       201 |
| mysql-bin.000009 |       201 |
| mysql-bin.000010 |       154 |
+------------------+-----------+
10 rows in set (0.00 sec)

[root@mysql57 logs]# rm -rf mysql-bin.000001 mysql-bin.000002 mysql-bin.000003


mysql> show binary logs;
+------------------+-----------+
| Log_name         | File_size |
+------------------+-----------+
| mysql-bin.000001 |         0 |
| mysql-bin.000002 |         0 |
| mysql-bin.000003 |         0 |
| mysql-bin.000004 |       201 |
| mysql-bin.000005 |       201 |
| mysql-bin.000006 |       201 |
| mysql-bin.000007 |       201 |
| mysql-bin.000008 |       201 |
| mysql-bin.000009 |       201 |
| mysql-bin.000010 |       154 |
+------------------+-----------+
10 rows in set (0.00 sec)

[root@mysql57 logs]# cat mysql-bin.index 
/logs/mysql-bin.000001
/logs/mysql-bin.000002
/logs/mysql-bin.000003
/logs/mysql-bin.000004
/logs/mysql-bin.000005
/logs/mysql-bin.000006
/logs/mysql-bin.000007
/logs/mysql-bin.000008
/logs/mysql-bin.000009
/logs/mysql-bin.000010

重启mysql的时候,mysql日志也会抛错错误

2021-11-27T00:34:43.403963Z 0 [ERROR] Failed to open log (file '/logs/mysql-bin.000001', errno 2)
2021-11-27T00:34:43.403982Z 0 [ERROR] Could not open log file
mysqld: File '/logs/mysql-bin.000002' not found (Errcode: 2 - No such file or directory)
2021-11-27T00:34:43.404675Z 0 [ERROR] Failed to open log (file '/logs/mysql-bin.000002', errno 2)
2021-11-27T00:34:43.404866Z 0 [ERROR] Could not open log file
mysqld: File '/logs/mysql-bin.000003' not found (Errcode: 2 - No such file or directory)
2021-11-27T00:34:43.405652Z 0 [ERROR] Failed to open log (file '/logs/mysql-bin.000003', errno 2)

打开mysql-bin.index,删除mysql-bin.000001、mysql-bin.000002、mysql-bin.000003三条记录http://www.cndba.cn/hbhe0316/article/22611

[root@mysql57 logs]# cat mysql-bin.index 
/logs/mysql-bin.000004
/logs/mysql-bin.000005
/logs/mysql-bin.000006
/logs/mysql-bin.000007
/logs/mysql-bin.000008
/logs/mysql-bin.000009
/logs/mysql-bin.000010
/logs/mysql-bin.000011
/logs/mysql-bin.000012
/logs/mysql-bin.000013

重启mysql,则显示正常

http://www.cndba.cn/hbhe0316/article/22611
http://www.cndba.cn/hbhe0316/article/22611

[root@mysql57 ~]# service mysqld restart
Shutting down MySQL.. SUCCESS! 
Starting MySQL.. SUCCESS! 

mysql> show binary logs;
+------------------+-----------+
| Log_name         | File_size |
+------------------+-----------+
| mysql-bin.000004 |       201 |
| mysql-bin.000005 |       201 |
| mysql-bin.000006 |       201 |
| mysql-bin.000007 |       201 |
| mysql-bin.000008 |       201 |
| mysql-bin.000009 |       201 |
| mysql-bin.000010 |       177 |
| mysql-bin.000011 |       177 |
| mysql-bin.000012 |       201 |
| mysql-bin.000013 |       177 |
| mysql-bin.000014 |       154 |
+------------------+-----------+
11 rows in set (0.00 sec)

版权声明:本文为博主原创文章,未经博主允许不得转载。

MYSQL

用户评论
* 以下用户言论只代表其个人观点,不代表CNDBA社区的观点或立场
hbhe0316

hbhe0316

关注

1.只有承认无知,才能装下新的东西; 2.进步来自一点点滴滴的积累; 3.广博让你更优秀,而专业让你无法替代; 4.挫折和失败能够转换为一种财富。

  • 889
    原创
  • 1
    翻译
  • 13
    转载
  • 24
    评论
  • 访问:1169939次
  • 积分:1523
  • 等级:核心会员
  • 排名:第6名
精华文章
    最新问题
    查看更多+
    热门文章
      热门用户
      推荐用户
        Copyright © 2016 All Rights Reserved. Powered by CNDBA · 皖ICP备2022006297号-1·

        QQ交流群

        注册联系QQ