MySQL bin-log 日志清理方式
2023-09-11 14:19:38 时间
MySQL bin-log 作用
1.数据恢复:如果你的数据库出问题了,而你之前有过备份,那么可以看日志文件,找出是哪个命令导致你的数据库出问题了,想办法挽回损失。
2.主从服务器之间同步数据:主服务器上所有的操作都在记录日志中,从服务器可以根据该日志来进行,以确保两个同步。
3.在什么时间会删除过期日志?
每次进行 LOG flush的时会自动删除过期的日志,那么什么时间才能触发log flush,手册上的解释为:
- 重启 MySQL
- bin-log 文件大小达到参数 max_binlog_size 限制;
- 手工执行清理命令
自动清理方法1:(修改配置文件和在mysql内设置参数可无需重启服务)
vim my.cnf
expire_logs_days = 7 // 表示日志保留7天,超过7天则设置为过期的
# mysql -u root -p > show binary logs; > show variables like '%log%'; > set global expire_logs_days = 7;
手动清理方法2:(推荐)
如果没有主从复制,可以通过下面的命令重置数据库日志,清除之前的日志文件:
reset master
但是如果存在复制关系,应当通过 PURGE 的名来清理 bin-log 日志,语法如下:
# mysql -u root -p
> purge master logs to 'mysql-bin.010’; //清除mysql-bin.010日志
> purge master logs before '2016-02-28 13:00:00'; //清除2016-02-28 13:00:00前的日志
> purge master logs before date_sub(now(), interval 3 day); //清除3天前的bin日志
注意,不要轻易手动去删除binlog,会导致binlog.index和真实存在的binlog不匹配,而导致expire_logs_day失效
转:https://www.cnblogs.com/zhanmeiliang/p/5951478.html
相关文章
- Mysql进阶:从redo log与binlog日志来看一条SQL更新语句是如何执行的
- Mysql授权允许远程访问解决Navicat for MySQL连接mysql提示客户端不支持服务器请求的身份验证协议;考虑升级MySQL客户端
- 【MySQL】一次修改mysql 默认路径的经历
- 【MySql】mysql 慢日志查询工具之mysqldumpslow
- 【MySql】开机自动启动mysql服务
- 函数计算支持 MySQL 实例绑定
- [root@master mysql]# mysql -uroot -pjsb ERROR 2002 (HY000): Can't connect to local MySQL server thro
- mysql trigger 触发器
- 数据库内核月报 - 2015 / 09-MySQL · 特性分析 · 5.6并行复制事件分发机制
- 【RF库Collections测试】Log Dictionary 【同log list】
- 【收藏】MySQL出现data too long for column ‘name‘ at row 1 解决
- MYsql 数据库密码忘记(Window)-2(mysql 5.7)
- mysql 函数执行错误-解决
- MySQL 聚簇索引和非聚簇索引 & mysql 索引为啥用b 树
- file /usr/share/mysql/charsets/README from install of MySQL-server-5.1.73-1.glibc23.i386 conflicts with file from package mysql-libs-5.1.73-8.el6_8.i686
- mysql安装后改动port号password默认字符编码
- Mysql之修改mysql的视图定义者
- Mysql之安全清理mysql-slow.log
- Centos7安装Mysql-5.6.34
- MySQL 配置, 避坑 sqlyog连接mysql错误码2058