mysql的binlog安全删除
admin
2023-05-18 04:42:07
0

 1.手动清除binlog文件    

        理论上,应该在配置文件/etc/my.cnf中加上binlog过期时间的配置项,expire_logs_days = 10.但是如果没有加这一项,随着产生越来越多的binlog,磁盘被吃掉了不少。可以直接删除binlog文件,但是可以通过mysql提供的工具来删除更安全。因为purge会更新mysql-bin.index中的条目,而直接删除的话,mysql-bin.index文件不会更新。mysql-bin.index的作用是加快查找binlog文件的速度。

       先help一下吧mysql的binlog安全删除  

 mysql> help purge
 Name: 'PURGE MASTER LOGS'
 Description:
 Syntax:
 PURGE {MASTER | BINARY} LOGS TO 'log_name'
 PURGE {MASTER | BINARY} LOGS BEFORE 'date'

 Deletes all the binary logs listed in the log index prior to the
 specified log or date. The logs also are removed from the list recorded
 in the log index file, so that the given log becomes the first.

 This statement has no effect if the --log-bin option has not been
 enabled.

 URL: http://dev.mysql.com/doc/refman/5.0/en/purge-master-logs.html

 Examples:
 PURGE MASTER LOGS TO 'mysql-bin.010';
 PURGE MASTER LOGS BEFORE '2003-04-02 22:46:26';

 两种方法都可用。第一个是删除至某一个文件为止,第二个是删除到某个日期为止。

 比如我们删除2017-05-31之前的log,可以这样

 mysql>PURGE MASTER LOGS BEFORE '2017-05-31 00:00:00';

2.设置expire_logs_days

# vim /etc/my.cnf  //修改expire_logs_days,x是自动删除的天数,一般将x设置为短点,如10            
 expire_logs_days = x  //二进制日志自动删除的天数。默认值为0,表示“没有自动删除”

      此方法需要重启mysql,附录有关于expire_logs_days的英文说明

      当然也可以不重启mysql,开启mysql主从,直接在mysql里设置expire_logs_days

   > show binary logs;
  > show variables like '%log%';
  > set global expire_logs_days = 10;

需要注意的是:最好到slave上面去看下当前同步到那个binlog文件了,用show slave status查看。否则,master上删多了的话,就造成slave缺失日志文件而导致数据不一致了。


相关内容

热门资讯

广西一大楼遭雷击,电光直贯楼顶   金城江百旺桥附近楼宇遭雷击  避雷针“接招”未伤人员 电梯“躺枪”停运待修5月15日6时54分,...
伊朗宣布5月19日起恢复股票市... 当地时间16日,伊朗证券交易组织表示,伊朗股票市场将于5月19日起恢复交易。伊朗证券交易组织负责交易...
联合国秘书长欢迎黎以延长停火 新华社联合国5月16日电(记者尚绪谦)联合国秘书长发言人办公室16日说,秘书长古特雷斯欢迎黎巴嫩与以...
如何让“彩礼”回归于“礼”?一... 黄河水浇灌出的宁夏红寺堡是中国最大的生态移民安置区,宁南八县的乡音在此交汇,对美好生活的期盼与发展中...
原创 外... 外星翻译官的翻车现场:地球语言真的太难了! 银河系翻译官协会(假想机构)最近发布了一份年度报告,总...
首飞成功!已突破大重量载荷发射... 科技日报记者 付毅飞 实习生 张城辉 记者从蓝箭航天获悉,5月14日11时0分,朱雀二号改进型遥五运...
京东携手MAXHUB共推AI智... PChome消息,近日,京东与智能会议平板领域领军品牌MAXHUB正式签署战略合作协议,标志着双方战...
29个智能气象站启动业务试运行 本报北京5月15日电(记者李红梅)记者从中国气象局获悉:北京密云等29个智能气象站已于近日启动业务试...
广西一载15人车辆坠河,10人... 记者从广西环江毛南族自治县相关方面获悉,据初步了解,5月16日21时30分许,一辆汽车在环江县洛阳镇...
iOS 26.5更新苹果地图两... 苹果地图是iOS 26.5此次更新中获得新功能的应用之一。以下是地图用户需要了解的最新变化。 推荐...