我继承了一个广泛使用存储过程的网络应用程序项目(PHP/MySQL),但我不确定如何将它们转移到我的本地机器上进行开发。
具体来说,我面临困难的是这些存储过程的导出和导入(最终目标是能够自动安装应用程序数据库的“基本”版本,包括存储过程)。
我将陈述我认为我理解的点点滴滴:
我可以导出
information_schema.ROUTINES
表,但无法将其导入 (phpMyAdmin) 到我的本地服务器(我相信information_schema
是系统数据库? )由于我无法通过 shell/命令行访问“在线”MySQL 服务器,
mysqldump
等工具的用途非常有限(用于移植到我的本地测试机器,反之则不然)命令
SHOW CREATE PROCEDURE procedure_name;
应该输出可用于创建过程的 SQL,但我似乎无法正常运行(ERROR 1305 (42000): PROCEDURE delAddress 不存在
)假设上述工作正常,下一步是让它循环导出所有存储过程(..然后通过 phpMyAdmin 在别处运行,导入它)
请更正任何不正确的地方,并提供有关如何在数据库服务器之间自动移植的指导。
非常感谢
最佳答案
事实证明,解决方案简单得离谱。
在导出页面上,有一个Add CREATE PROCEDURE/FUNCTION/EVENT statement
选项。
通过选中此框,它还会导出稍后/在另一台服务器上导入过程所需的 SQL。
关于php - 在 MySQL 服务器之间移植存储过程,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15160260/