天天看點

BINLOG之1781的問題

一次通過BINLOG恢複資料時報:

ERROR 1781 (HY000): @@SESSION.GTID_NEXT cannot be set to UUID:NUMBER when @@GLOBAL.GTID_MODE = OFF

場景說明:

一次誤删資料删除還原,直接把BINLOG檔案導成SQL檔案形式(mysqlbinlog mysql-bin.000020>a20.sql),在通過source 方式進行資料的還原,導緻提示錯誤資訊1781

問題1:線上并未啟動GTID功能,那通過這樣導出的SQL檔案怎麼又GTID的資訊呢? 可能是......

解決辦法:

1、在導出的增量日志去掉GTID

sed -i 's/SET @@SESSION.GTID_NEXT/#SET @@SESSION.GTID_NEXT/g' aa.sql

2、對于5.7版本之前執行SET @@GLOBAL.GTID_MODE = OFF_PERMISSIVE 是無法執行,提示靜态參數,5.7哪怕你檢視的已經是OFF,在不執行參數前一樣報錯。

3、在使用mysqlbinlog解析binlog日志時指定--skip-gtids=true,解析出來的檔案就不會包含SET @@SESSION.GTID_NEXT=

本文轉自 DBAspace 51CTO部落格,原文連結:http://blog.51cto.com/dbaspace/1980274