大多数存储过程都是在%或'someUser'@ localhost创建的 当我将该过程复制到另一台服务器时,它不起作用,因为用户'someUser'不存在。转储文件中的相关行如下所示。
/*!50003 CREATE*/ /*!50020 DEFINER=`root`@`%`*/ /*!50003 PROCEDURE `SP_Name`(in dt varchar(10))
如何在不在其中创建用户的情况下在其他服务器上成功运行该过程?
答案 0 :(得分:0)
将DEFINER子句中的'username'更改为在新服务器上运行的用户。
/*!50003 CREATE*/ /*!50020 DEFINER=`[new_server_user]`@`%`*/ /*!50003 PROCEDURE `SP_Name`(in dt varchar(10))