【发布时间】:2013-07-30 04:30:48
【问题描述】:
我有一个包含所有例程的 MySQL 转储。当我恢复时,只有存储过程没有恢复。我使用 Dump 的 MySQL 版本是 5.0.77-log,我恢复到的版本是 5.6.12。
任何帮助表示赞赏。
谢谢
【问题讨论】:
-
您是否收到任何错误消息?
标签: mysql stored-procedures mysqldump restore
我有一个包含所有例程的 MySQL 转储。当我恢复时,只有存储过程没有恢复。我使用 Dump 的 MySQL 版本是 5.0.77-log,我恢复到的版本是 5.6.12。
任何帮助表示赞赏。
谢谢
【问题讨论】:
标签: mysql stored-procedures mysqldump restore
服务器主机是否已更改,?我的意思是您是将数据库从一台主机移植到另一台主机还是在不同数据库中的同一主机上尝试。
b/c 如果您将 db 从一台服务器更改为另一台服务器,那么您必须在存储过程中更改您的定义器(如果已定义)。“定义器”就像 DEFINER = 'admin'@ sp中的'localhost', .
在你的存储过程中检查这个。如果不是问题,请告诉我。More about definer...
【讨论】:
我来到这里是因为我的 Mariadb 存储过程和函数都不会恢复(手动运行转储文件中的 SQL)它只是在所有过程和函数上出错。我更换了分隔符;;这是用 $$ 在我的文件中设置的,它会恢复。恢复的表和视图没有任何问题。备份确实移动了主机,我还更改了定义器,因为它更改了用户/IP。
【讨论】: