我想创建一个我的数据库(MySQL)的完整备份,并且我使用命令:
mysqldump --routines -u dev_user -pblabla MyDB > d:\DB_Backups\%date%.sql
(这是在带有简单.bat脚本的Windows机器上)。
所有的伤心,我意识到所有例程都停止包含在创建的文件中。
有没有办法创建完整备份,然后可以用它来创建一个包含数据库全部内容的新数据库(在生产中)?
提前致谢。
答案 0 :(得分:1)
对于我的windows mysql 5.6.24安装,我会使用-R
开关,例如
mysqldump -u root -p -R so_gibberish > c:\nate\out123.sql
注意,-p提示输入密码,db名称为so_gibberish。
输出文件将包含表,过程和函数:
顺便说一句,请参阅Restrictions on Views上的Mysql手册页。此外,堆栈上的这些好答案:
虽然以上内容可能无法立即解决您的问题,但我仍在寻找,并可能会帮助其他人。
答案 1 :(得分:0)
我遇到了同样的问题,并且在SELECT
表上缺少与mysql.proc
一起使用的用户的特权mysqldump
。
根据{{3}}:
在输出中包括用于转储数据库的存储例程(过程和函数)。此选项需要mysql.proc表的SELECT特权。