您的位置:首页 > 其它

logbin 日志占用大量空间 查看工具

2008-10-07 12:11 399 查看
编辑 /etc/my.cnf ,注释掉'log-bin=mysql-bin'这行即可
或者,你想用 binary log,但不要这么无限制的增长下去,可以在 mysqld 的设置中加上:

expire_logs_days = N

binary log 将在 N 天后自动过期

Oracle中提供了DBMS_LOGMNR来对日志文件进行分析, 来解出Redo SQL和Undo SQL, MySQL中也提供了一个名为mysqlbinlog的工具, 用来解释或取出存放在binlog中的SQL语句, 最基本的使用语法如下:

mysqlbinlog [options] log_file ...
在选项中, 可以指定一些过滤条件, 来解出你所想用的东西, 这样的选项有:

--database=db_name, -d db_name
--offset=N, -o N
--[start|stop]-datetime=datetime
--[start|stop]-position=N
解出来的就是一条一条SQL语句了, 将这些语句执行一下, 就等于增量恢复了, 估计不是用绑定变量的, 可能在MySQL中是不是绑定变量不是很重要了. 当然重要的一点是不要运行多个进程去跑, 因为这样的话, 顺序就得不到保证了. 如下所示:
$ mysqlbinlog binlog.000001 > /tmp/statements.sql
$ mysqlbinlog binlog.000002 >> /tmp/statements.sql
$ mysql -e "source /tmp/statements.sql"
Oracle的LogMiner不太爽是因为他不是离线的, 做成MySQL这样的倒是比较方便多了. 看到这儿也应当可以想象到, MySQL中的复制大约是什么回事了吧?
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: