• 售前

  • 售后

热门帖子
入门百科

mysql 精确清算binlog日志的两种方法

[复制链接]
黑头发的汉子子x 显示全部楼层 发表于 2021-10-25 19:45:44 |阅读模式 打印 上一主题 下一主题
mysq 准确清算binlog日记
媒介:
MySQL中的binlog日记记载了数据库中数据的变动,便于对数据的基于时间点和基于位置的规复,但是binlog也会日渐增大,占用很大的磁盘空间,因此,要对binlog使用准确安全的方法清算掉一部门没用的日记。

【方法一】手动清算binlog

清算前的预备:

① 查察主库和从库正在使用的binlog是哪个文件
  1. show master status\G
  2. show slave status\G  
复制代码
② 在删除binlog日记之前,起首对binlog日记备份,以防万一
开始动手删除binlog:
  1. purge master logs before'2016-09-01 17:20:00'; //删除指定日期以前的日志索引中binlog日志文件
复制代码

  1. purge master logs to'mysql-bin.000022'; //删除指定日志文件的日志索引中binlog日志文件
复制代码
留意:
时间和文件名肯定不可以写错,尤其是时间中的年和文件名中的序号,以防不警惕将正在使用的binlog删除!!!

切勿删除正在使用的binlog!!!

使用该语法,会将对应的文件和mysql-bin.index中的对应路径删除。
【方法二】通过设置binlog过期的时间,使体系主动删除binlog文件
  1. mysql> show variables like 'expire_logs_days';
  2. +------------------+-------+
  3. | Variable_name  | Value |
  4. +------------------+-------+
  5. | expire_logs_days |   0  |
  6. +------------------+-------+
  7. mysql> set global expire_logs_days = 30;    #设置binlog多少天过期
复制代码
留意:

过期时间设置的要适当,对于主从复制,要看从库的延迟决定过期时间,避免主库binlog还未传到从库便因过期而删除,导致主从不划一!!!
感谢阅读,渴望能资助到各人,谢谢各人对本站的支持!

帖子地址: 

回复

使用道具 举报

分享
推广
火星云矿 | 预约S19Pro,享500抵1000!
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

草根技术分享(草根吧)是全球知名中文IT技术交流平台,创建于2021年,包含原创博客、精品问答、职业培训、技术社区、资源下载等产品服务,提供原创、优质、完整内容的专业IT技术开发社区。
  • 官方手机版

  • 微信公众号

  • 商务合作