删除庞大的MySQLbinlog实操
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了删除庞大的MySQLbinlog实操,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含2149字,纯文字阅读大概需要4分钟。
内容图文
以下的文章主要描述的是清理删除庞大的MySQL binlog的实际操作方案,我们是在MySQL master/slave架构的环境下对清理删除庞大的MySQL binlog进行操作,以下就是文章的具体内容描述。 问题:主库硬盘不足s 原因:MySQL的var下大量bin二进制log,200多个g啊 目
以下的文章主要描述的是清理删除庞大的MySQL binlog的实际操作方案,我们是在MySQL master/slave架构的环境下对清理删除庞大的MySQL binlog进行操作,以下就是文章的具体内容描述。
问题:主库硬盘不足s
原因:MySQL的var下大量bin二进制log,200多个g啊
目标:安全删除MySQL binlog
方法:网上搜搜关键词“MySQL bin文件 删除”,还真有~~
相关语句:
- PURGE {MASTER | BINARY} LOGS TO 'log_name'
- PURGE {MASTER | BINARY} LOGS BEFORE 'date'
用于删除列于在指定的日志或日期之前的日志索引中的所有二进制日志。这些日志也会从记录在日志索引文件中的清单中被删除,这样被给定的日志成为第一个。
例如:
- PURGE MASTER LOGS TO 'MySQL-bin.010';
- PURGE MASTER LOGS BEFORE '2003-04-02 22:46:26';
BEFORE变量的date自变量可以为'YYYY-MM-DD hh:mm:ss'格式。MASTER和BINARY是同义词。
如果您有一个活性的从属服务器,该服务器当前正在读取您正在试图删除的日志之一,则本语句不会起作用,而是会失败,并伴随一个错误。不过,如果从属服务器是休止的,并且您碰巧清理了其想要读取的日志之一,则从属服务器启动后不能复制。当从属服务器正在复制时,本语句可以安全运行。您不需要停止它们。
删除庞大的MySQL binlog 要清理日志,需按照以下步骤:
1. 在每个从属服务器上,使用SHOW SLAVE STATUS来检查它正在读取哪个日志。
2. 使用SHOW MASTER LOGS获得主服务器上的一系列日志。
3. 在所有的从属服务器中判定最早的日志。这个是目标日志。如果所有的从属服务器是更新的,这是清单上的最后一个日志。
4. 制作您将要删除的所有日志的备份。(这个步骤是自选的,但是建议采用。)
5. 清理所有的日志,但是不包括目标日志
实践:
从库下---
MySQL> show slave status\G;
……
Master_Log_File: tc-ns-comment-db00-bin.000162
Relay_Master_Log_File: tc-ns-comment-db00-bin.000162
……
主库下---
MySQL> show master log;
…………一堆堆
MySQL> PURGE MASTER LOGS TO 'tc-ns-comment-db00-bin.000070';
……等待n长时间
- MySQL>quit
- $du -sh ./
减少了好多g啊,世界清净了~~
上述的相关内容就是对删除庞大的MySQL binlog的描述,希望会给你带来一些帮助在此方面。
内容总结
以上是互联网集市为您收集整理的删除庞大的MySQLbinlog实操全部内容,希望文章能够帮你解决删除庞大的MySQLbinlog实操所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。