2013-10-08 47 views
4

我是一名MySQL新手,但需要安排一项任务来自动备份我的数据库。MySQL 5.6 - 如何在没有密码提示的情况下使用mysqldump在Windows上创建备份

我已经成功地创建一个备份使用以下命令手动: -

mysqldump -u root -p --all-databases > "a:\mysql\all_databases.sql" 

但我不能工作如何,而不必手动输入我的密码运行的命令。我曾尝试过: -

mysqldump -u root -p'*my password*' --all-databases > "a:\mysql\all_databases.sql" 

看起来会执行,但结果文件大小只有1kB。而第一个命令生成一个2661kB的文件。

任何人都可以帮助我吗?

+0

查看如何将密码存储在配置文件中,以免每次都提示:http://stackoverflow.com/a/9293090/470749 – Ryan

+0

mysqldump -u root -ppassword test1>“C:\ a .sql“ 我使用的这个命令不工作,它给予访问被拒绝 – AnonymousDev

回答

5

尝试下面的命令,将“your_password”与root密码:

mysqldump --user=root --password=your_password --all-databases >"a:\mysql\all_databases.sql" 
2

即使这是一个旧线:)进行完整备份,包括用户访问权限(如我的情况)performance_schema,功能,例程&触发器,你根本不需要mysqldump。

下载&在您的机器上安装7zip。 停止你的mysql服务器。 打开命令提示符并使用此:

"C:\Program Files\7-Zip\7z.exe" a -t7z -mx9 -mhe -p<my_secure_password> "W:\backup_all_mysql_databases.7z" "W:\wamp\bin\mysql\mysql5.6.17\data" 

对于未压缩186MB/data文件夹,你会得到的7z压缩文件的170KB。 您可以创建BAT文件以将当前日期时间附加到文件。

恢复意味着从MySQL中解压缩,删除旧的/数据文件夹,并替换备份中的一个。

有一个小小的缺点......如果你忘记了root密码(像我一样),你也将无法恢复数据库。

就是这样。

+0

为什么不可用?可以将忘记的root密码重置为MySQL,并拥有对操作系统的root权限。或者你的意思是系统root密码? – Vasiliy

相关问题