删除MySQL二进制日志的方法_MySQL数据库_黑客防线网安服务器维护基地--Powered by WWW.RONGSEN.COM.CN

删除MySQL二进制日志的方法

作者:荣森伟业网安 来源:黑客防线网安网站维护基地 浏览次数:0

本篇关键词:MySQL二进制
黑客防线网安网讯:在linux 下,先进入 mysql 如 /usr/local/mysql/bin/mysql -uroot -ppwd
linux 下,先进入 mysql 如 /usr/local/mysql/bin/mysql -uroot -ppwd

mysql> SHOW MASTER LOGS; //查看所有的二进制日志列表

1.RESET MASTER


可以删除列于索引文件中的所有二进制日志把二进制日志索引文件重新设置为空并创建一个新的二进制日志文件

2.PURGE MASTER LOGS

语法
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是同义词。
如果您有一个活性的从属服务器,该服务器当前正在读取您正在试图删除的日志之一,则本语句不会起作用,而是会失败,并伴随一个错误。不过,如果从属服务器是休止的,并且您碰巧清理了其想要读取的日志之一,则从属服务器启动后不能复制。当从属服务器正在复制时,本语句可以安全运行。您不需要停止它们。
要清理日志,需按照以下步骤:

    1.
    在每个从属服务器上,使用SHOW SLAVE STATUS来检查它正在读取哪个日志。
    2.
    使用SHOW MASTER LOGS获得主服务器上的一系列日志。
    3.
    在所有的从属服务器中判定最早的日志。这个是目标日志。如果所有的从属服务器是更新的,这是清单上的最后一个日志。
    4.
    制作您将要删除的所有日志的备份。(这个步骤是自选的,但是建议采用。)
    5.
    清理所有的日志,但是不包括目标日志。

3. expire_logs_days参数

二进制日志自动删除的天数。默认值为0,表示“没有自动删除”。启动时和二进制日志循环时可能删除
expire_logs_days     numeric     GLOBAL

在my.cnf配置文件【mysqld】段中加入,重启MySQL服务,例:
expire_logs_days=3
删除3天以前的日志

注:当然需要考虑有slave情况下的影响
    黑客防线网安服务器维护方案本篇连接:http://www.rongsen.com.cn/show-6832-1.html
网站维护教程更新时间:2011-07-29 00:34:22  【打印此页】  【关闭
我要申请本站N点 | 黑客防线官网 |  
专业服务器维护及网站维护手工安全搭建环境,网站安全加固服务。黑客防线网安服务器维护基地招商进行中!QQ:29769479

footer  footer  footer  footer