当前位置:首页 > Mysql教程 > 列表

mysqlbinlog把mysql二进制文件转换文本文件

发布:smiling 来源: PHP粉丝网  添加日期:2014-09-23 15:01:29 浏览: 评论:0 

mysqlbinlog命令是mysql中的一个恢复mysql数据库的工具了,下面本文章再次来为各位介绍利用mysqlbinlog来恢复mysql二进制日志的例子.

目前一些项目已经迁移到Mysql5.5,而在mysql5.5中binlog_format为mixed这样的话,默认情况下的Mysql binary log就是base64格式,不可读,为了在排查问题时候,提供帮助研读下mysqlbinlog的帮助文档得知可以解码:

  1. –base64-output[=name] 
  2. Determine when the output statements should be 
  3. base64-encoded BINLOG statements: ’never’ disables it and 
  4. works only for binlogs without row-based events; 
  5.  ’decode-rows’ decodes row events into commented SQL 
  6.                       statements if the –verbose option is also given; ’auto’ 
  7. prints base64 only when necessary (i.e., for row-based 
  8. events and format description events); ’always’ prints 
  9. base64 whenever possible. ’always’ is deprecated, will be 
  10. removed in a future version, and should not be used in a 
  11. production system.  –base64-output with no ’name’ 
  12. //开源代码phpfensi.com 
  13. argument is equivalent to –base64-output=always and is 
  14. also deprecated.  If no –base64-output[=name] option is 
  15. given at all, the default is ’auto’. 
  16. mysqlbinlog –base64-output=DECODE-ROWS -v mysql-bin.00002 

通过给定–base64-output和-v参数,可以解码row模式下的binary log.

unknown variable ‘default-character-set=utf8mb4′错误

一个手机网的项目,使用的编码为utf8mb4,一切都是正常的,到了用mysqlbinlog的时候,提示如下:

[root@localhost data]# mysqlbinlog mysql-bin-500.000011

mysqlbinlog:unknown variable ‘default-character-set=utf8mb4′

解决方法:

1. 修改my.cnf,在[client]下注释或删除default-character-set=utf8mb4;

2. 在命令行中加入–no-defaults开关,使用mysqlbinlog –no-defaults;

Tags: mysqlbinlog mysql二进制转换

分享到: