mysql:管理mysql的二进制日志(mysql 8.0.19)
一,从命令行查看mysql的日志文件:
[root@d1 var]# ll total 174188296 -rw-rw---- 1 mysql mysql 1074435802 Jul 6 2019 mysql-bin.000001 -rw-rw---- 1 mysql mysql 1074418575 Jul 6 2019 mysql-bin.000002 -rw-rw---- 1 mysql mysql 1073741960 Jul 26 2019 mysql-bin.000003 -rw-rw---- 1 mysql mysql 977965714 Aug 2 2019 mysql-bin.000004 -rw-rw---- 1 mysql mysql 126 Aug 2 2019 mysql-bin.000005 -rw-rw---- 1 mysql mysql 1073742455 Aug 7 2019 mysql-bin.000006 -rw-rw---- 1 mysql mysql 1073742104 Aug 13 2019 mysql-bin.000007 -rw-rw---- 1 mysql mysql 1073742124 Aug 19 2019 mysql-bin.000008 -rw-rw---- 1 mysql mysql 1073742327 Sep 7 2019 mysql-bin.000009 -rw-rw---- 1 mysql mysql 638874522 Sep 18 2019 mysql-bin.000010 -rw-rw---- 1 mysql mysql 949280 Sep 18 2019 mysql-bin.000011 -rw-rw---- 1 mysql mysql 1074508569 Sep 23 2019 mysql-bin.000012 -rw-rw---- 1 mysql mysql 1073741886 Sep 26 2019 mysql-bin.000013 -rw-rw---- 1 mysql mysql 1073742102 Oct 18 2019 mysql-bin.000014 -rw-rw---- 1 mysql mysql 1073741907 Nov 8 2019 mysql-bin.000015 -rw-rw---- 1 mysql mysql 1073742207 Nov 29 2019 mysql-bin.000016 -rw-rw---- 1 mysql mysql 1073741927 Dec 20 2019 mysql-bin.000017 -rw-rw---- 1 mysql mysql 1073742057 Jan 11 2019 mysql-bin.000018 -rw-rw---- 1 mysql mysql 473988798 Jan 18 2019 mysql-bin.000019 -rw-rw---- 1 mysql mysql 2055287 Jan 18 2019 mysql-bin.000020 -rw-rw---- 1 mysql mysql 29439 Jan 18 2019 mysql-bin.000021 ...
说明:
二进制日志文件的路径在mysql的配置文件中定义:
[dbop@d1 var]$ more /etc/my.cnf ... # BINARY LOGGING # log-bin = /data/mysql/var/mysql-bin
说明:刘宏缔的架构森林是一个专注架构的博客,
网站:https://blog.imgtouch.com
本文: https://blog.imgtouch.com/index.php/2023/05/26/mysql-guan-li-mysql-de-er-jin-zhi-ri-zhi-mysql-8-19/
对应的源码可以访问这里获取: https://github.com/liuhongdi/
说明:作者:刘宏缔 邮箱: 371125307@qq.com
二,执行清理二进制日志的sql
1,登录到mysql
[root@d1 ~]# mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
2,查看二进制日志
mysql> show binary logs; +------------------+------------+ | Log_name | File_size | +------------------+------------+ | mysql-bin.000001 | 1074435802 | | mysql-bin.000002 | 1074418575 | | mysql-bin.000003 | 1073741960 | | mysql-bin.000004 | 977965714 | | mysql-bin.000005 | 126 | | mysql-bin.000006 | 1073742455 | | mysql-bin.000007 | 1073742104 | | mysql-bin.000008 | 1073742124 | | mysql-bin.000009 | 1073742327 | ...
3,清理二进制日志
删除mysql-bin.000020之前的日志,但不包含mysql-bin.000020本身
mysql> purge binary logs to 'mysql-bin.000020'; Query OK, 0 rows affected (32.63 sec)
4,查看purge的帮助:
mysql> help purge binary logs Name: 'PURGE BINARY LOGS' Description: Syntax: PURGE { BINARY | MASTER } LOGS { TO 'log_name' | BEFORE datetime_expr } The binary log is a set of files that contain information about data modifications made by the MySQL server. The log consists of a set of binary log files, plus an index file (see http://dev.mysql.com/doc/refman/5.5/en/binary-log.html). The PURGE BINARY LOGS statement deletes all the binary log files listed in the log index file prior to the specified log file name or date. BINARY and MASTER are synonyms. Deleted log files also are removed from the list recorded in the index file, so that the given log file becomes the first in the list. This statement has no effect if the server was not started with the --log-bin option to enable binary logging. URL: http://dev.mysql.com/doc/refman/5.5/en/purge-binary-logs.html Examples: PURGE BINARY LOGS TO 'mysql-bin.010'; PURGE BINARY LOGS BEFORE '2008-04-02 22:46:26';
5,其他 :
reset master
会删除所有的二进制日志,
所以如果有主从复制时不要使用这个处理方法
6,如何自动清理?
#使二进制日志超过14天后自动过期
expire-logs-days = 14
三,查看mysql的版本
mysql> SHOW VARIABLES LIKE 'version'; +---------------+-----------------+ | Variable_name | Value | +---------------+-----------------+ | version | 8.0.19-log | +---------------+-----------------+ 1 row in set (0.00 sec)
四,查看linux的版本:
[dbop@d1 var]$ more /etc/redhat-release CentOS release 8.1 (Final)
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
· 记一次.NET内存居高不下排查解决与启示
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 开源Multi-agent AI智能体框架aevatar.ai,欢迎大家贡献代码
· Manus重磅发布:全球首款通用AI代理技术深度解析与实战指南
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧