重庆分公司,新征程启航
为企业提供网站建设、域名注册、服务器等服务
二进制日志由包含“ 事件 ”的文件组成,这些 事件描述了对数据库内容的修改。服务器以二进制格式写入这些文件。
1.查看binlog文件名列表
show binary logs;
2.查看binlog文件内容
show binlog events in 'mysql-bin.000001' limit 10;
3.查看binlog当前位置点
show master status;
4.查看binlog 格式
日志格式:statement,row,
row:优点:日志比较清楚,会记录每行数据修改细节 缺点:会产生大量的日志
statement:优点:只记录sql语句,解决了row格式的缺点,减少了日志量,节省I/O 及存储资源,提高了性能。 缺点:有些sql语句不能复制到slava,导致主从不一致,存在一些bug,语句执行错误不易恢复。
mixed:处于row与statement格式之间,很好的处理了其优缺点。
SELECT @@binlog_format;
5.刷新日志
flush logs;
6.清除日志
reset master;
7.用mysqlbinlog工具查看
mysqlbinlog -v --base64-output=decode-rows /usr/app/mysqllog/mysql_bin.000001
基于开始/结束时间
mysqlbinlog --start-datetime='2018-12-13 00:00:00' --stop-datetime='2018-12-14 15:01:01' -d hadoop /usr/app/mysqllog/mysql-bin.000001
基于pos值输出到压缩文件 ,注:test是库名,/var/lib/mysql/mysql-bin.000001是二进制文件路径
mysqlbinlog --start-position=2098 --stop-position=2205 -d test /usr/app/mysqllog/mysql-bin.000001 |gzip >test.sql.gz
提取指定位置的多个binlog日志文件
mysqlbinlog --start-position="120" --stop-position="332" /usr/app/mysqllog/mysql-bin.000001 /usr/app/mysqllog/mysql-bin.000002|more
提取指定数据库binlog并转换字符集到UTF8
mysqlbinlog --database=test --set-charset=utf8 /usr/app/mysqllog/mysql-bin.000001 /usr/app/mysqllog/mysql-bin.000002 >test.sql
恢复数据
mysqlbinlog --start-position="120" --stop-position="332" /usr/app/mysqllog/mysql-bin.000001 | mysql -uroot -p
备份日志:必须由两个mysqlbinlog 完成
mysqlbinlog --read-from-remote-server --host=host_name --raw
binlog.000001 binlog.000131 binlog.000132
--read-from-remote-server可以用-R替代:连接到服务器并请求其二进制日志, --host:主机ip,
mysqlbinlog --read-from-remote-server --host=host_name --raw
--to-last-log binlog.000001
--raw:写入原始(二进制)输出, binlog.000001:第一个文件, --to-last-log:最后一个文件读完退出
实时读取日志
mysqlbinlog --read-from-remote-server --host=host_name --raw
--stop-never binlog.000001
--stop-never:到达最后一个日志文件的末尾后保持与服务器的连接并继续读取新事件,没有必要指定 --to-last-log读取最后一个日志文件,因为该选项是隐含的。
另外有需要云服务器可以了解下创新互联cdcxhl.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。