mysqldump导出远程数据库

为了备份虚拟主机的mysql数据库,只能用mysqldump导出到本地。

一.在CMD上运行:

   mysqldump --opt -h192.168.0.156 -uUsername -pPassword databaseName>database.sql  


     但由于数据库用户的权限不够,总显示:

  1. mysqldump: Got error: 1044: Access denied for user 'Username'@'%' to database 'databaseName' when using LOCK TABLES  

    是没有LOCK TABLES的权限,于是查看mysqldump的帮助,加上参数--skip-lock-tables ,如下:

         mysqldump --opt -h192.168.0.156 -uUsername -pPassword --skip-lock-tables databaseName>database.sql  

二:用Java代码操作

Runtime runtime = Runtime.getRuntime();

Process process = runtime.exec("cmd /c mysqldump  --opt -hlocalhost -uroot -proot abc_unicms>d:/databasewanglong.sql");

和cmd不同的是在执行字符串前必须加上cmd /c.
posted @ 2013-07-04 22:41  左手边的书  阅读(1993)  评论(0编辑  收藏  举报