今天再復制服務器上數據庫的時候(使用Mysql Workbench )提示1227錯誤,
數據庫版本5.7.18,復制到的數據庫也是5.7.18。
總結一下網上的幾種方法:
方法一:
最直觀的翻譯是說權限的問題,一般是mysql的用戶創建后沒給權限,
select * from mysql.user where user='root'
查看權限后發現super_priv是為N,修改后導入還是無效;
方法二:
很多人是因為跨版本導入出現1227,然后說刪除
SET @@SESSION.SQL_LOG_BIN= 0;
就能實現,我這邊試了也不行;
最后是我的解決方法:
網上的方法我都試過還是導入不進去,
然后把提示中錯誤的地方都刪掉,最后導入成功了- -,
其實和方法二很像,刪除紅框的內容,黃框是添加的內容:
刪除的前面2處地方是在sql的最開始,
SET @MYSQLDUMP_TEMP_LOG_BIN =@@SESSION.SQL_LOG_BIN;
SET @@SESSION.SQL_LOG_BIN= 0;
SET @@GLOBAL.GTID_PURGED='55a52aed-75e6-11e8-971f-246e96771c90:785864-787738,
569cf9ca-b336-11e8-be4e-501d93ecc0b8:1-10040';
最后一次在sql的尾部。
SET @@SESSION.SQL_LOG_BIN = @MYSQLDUMP_TEMP_LOG_BIN;