mysqldump只是没有工作

时间:2016-11-11 20:01:33

标签: java mysql

我现在一直在看这个。

我从命令行运行了这个确切的命令,我知道它有效:

mysqldump --user=user --password=password db > C:\\db.sql

然而,在Java中,它只是跳过它并表示备份失败。我错过了什么?:

        Process exec = Runtime.getRuntime().exec("mysqldump --user=user --password=password db > C:\\db.sql");

        int processComplete = exec.waitFor();

        if(processComplete == 0)
            log.info("Backup successful.");
        else
            log.info("Backup failed. STOP GETTING HERE :(");

有什么想法吗?我在这里查看了其他问题,包括使用ProcessBuilder,但没有任何效果。

修改

试过这个:

exec = Runtime.getRuntime()。exec(" C:\ Program Files \ MySQL \ MySQL Server 5.5 \ bin \ mysqldump.exe --user = user --password = password db> C:\ db.sql&#34);

也没有运气。

我总是尝试/而不是\而且没有运气。我也重新启动了MySQL并检查了权限。

1 个答案:

答案 0 :(得分:0)

问题似乎与我在代码中使用mysqldump的方式有关。当我重写命令时:

Process exec = Runtime.getRuntime().exec("mysqldump -u user -ppassword db -r C:\\db.sql");

有效。

将来任何人都想要解决方案。