分类: MySQL
MySQLbinlog 查看binlog时报错unknown variable 'default-character-set=utf8'

mysqlbinlog是用来查看binlog文件内容的(使用方式man mysqlbinlog查看),但是使用mysqlbinlog将binlog文件转换成人类可读的内容时却报错:

mysqlbinlog: unknown variable 'default-character-set=utf8'

原因是mysqlbinlog这个工具无法识别binlog中的配置中的default-character-set=utf8这个指令,
直接带上--no-defaults参数即可,

/usr/local/mysql/bin/mysqlbinlog --no-defaults -vv --base64-output=decode-rows binlog.000020
-vv --base64-output=decode-rows参数是进行base64解码,不带的话查看的是乱码·

--start-position=N 从二进制日志中第1个位置等于N参量时的事件开始读。
--stop-position=N 从二进制日志中第1个位置等于和大于N参量时的事件起停止读。

如把binlog.000020文件中75350到75357的记录导出到/tmp/f.log文件中:

/usr/local/mysql/bin/mysqlbinlog --no-defaults -vv --base64-output=decode-rows -v --start-position=263639 --stop-position=265331 /home/data/mysql/binlog/binlog.000020 > /tmp/f.log

也可以直接指定时间点操作

--start-datetime="2017-11-28 00:00:00" --stop-datetime="2017-11-28 23:59:59"


相关博文:

发表新评论