我想從一臺服務器恢復一個mysqldump到另一臺服務器。當我運行導入:mysqldump沒有存儲功能
mysql -u user -p < file.sql
我得到的錯誤:
You do not have the SUPER privilege and binary logging is enabled
快速谷歌證明了我可以通過設置修復:
SET GLOBAL log_bin_trust_function_creators = 1;
然而,在服務器上我我導入到我沒有root權限,我的MySql帳戶沒有足夠的權限來進行此設置。
我看了一下手冊頁:https://dev.mysql.com/doc/refman/5.7/en/stored-programs-logging.html
看來,這個錯誤可能被進口涉及到存儲功能,它們不會啓用,因此導致此錯誤。
我跑這個原始數據庫上:
mysql> SELECT ROUTINE_DEFINITION FROM INFORMATION_SCHEMA.ROUTINES WHERE ROUTINE_SCHEMA = 'mydatabase' AND ROUTINE_TYPE = 'PROCEDURE';
Empty set (0.00 sec)
所以看起來原始數據庫沒有存儲的過程,爲什麼這個錯誤發生?
我沒有系統上的root權限我正在導入,所以我可以通過改變mysqldump的方式來解決這個問題嗎?
我怎樣才能讓數據庫導入工作?
編輯;
這可能是由觸發器引起的嗎?我跑:
SHOW TRIGGERS;
原始數據庫上,並且是作爲觸發器的結果