mysqlbinlog命令恢复数据要注意的难题有哪些

这篇文章将为大家详细讲解有关mysqlbinlog命令恢复数据要注意的问题有哪些,小编觉得挺实用的,因此分享给大家做个参考,希望大家阅读完这篇文章后可以有所收获。
 
1.不要使用 base64-output=decode-rows 参数
 
--base64-output=decode-rows主要是解析或查看ROW级别binlog日志时使用,执行SQL时不要使用该参数。
 
例如:
 
/usr/local/mysql-8.0.13/bin/mysqlbinlog mysql-bin.000004 | mysql -uroot -p'123456'
 
或者
 
/usr/local/mysql-8.0.13/bin/mysqlbinlog mysql-bin.000004 > /tmp/rollback.sql
 
mysql -uroot -p'123456' < /tmp/rollback.sql
 
2.是否应该使用--skip-gtids=true参数
 
第一种情况:
 
如果我们是要恢复数据到源数据库或者和源数据库有相同 GTID 信息的实例,那么就要使用该参数。如果不带该参数的话,是无法恢复成功的。
 
# /usr/local/mysql-8.0.13/bin/mysqlbinlog --skip-gtids=true  mysql-bin.000001 |mysql -uroot -p
 
或者
 
# /usr/local/mysql-8.0.13/bin/mysqlbinlog --skip-gtids=true  mysql-bin.000001 > rollback.sql
 
mysql -uroot -p'123456' < rollback.sql
 
第二种情况:
 
如果是恢复到其他实例的数据库并且不包含源实例的 GTID 信息,那么可以不使用该参数,使用或者不使用都可以恢复成功。
 
关于“mysqlbinlog命令恢复数据要注意的问题有哪些”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,使各位可以学到更多知识,如果觉得文章不错,请把它分享出去让更多的人看到。

dawei

【声明】:绥化站长网内容转载自互联网,其相关言论仅代表作者个人观点绝非权威,不代表本站立场。如您发现内容存在版权问题,请提交相关链接至邮箱:bqsm@foxmail.com,我们将及时予以处理。