Бэкап MySQL базы через Java приложение

178
11 июня 2018, 13:30

Делаю бэкапы базы данный MySQL в Java приложении. Вот код:

try {            
Runtime rt = Runtime.getRuntime();
String executeCmd = "mysqldump.exe -u " + dbUser + " -p " + dbPass;
executeCmd += " --all-databases > " + savePath;
System.out.println(executeCmd);
Process proc = rt.exec(executeCmd);
InputStream stderr = proc.getErrorStream();
InputStreamReader isr = new InputStreamReader(stderr);
BufferedReader br = new BufferedReader(isr);
String line = null;
System.out.println("<ERROR>");
while ( (line = br.readLine()) != null)
    System.out.println(line);
System.out.println("</ERROR>");
int exitVal = proc.waitFor();
System.out.println("Process exitValue: " + exitVal);
}
    catch (Throwable t) {
    t.printStackTrace();
}

В ответ получаю exitValue: 1. Если скопировать вывод System.out.pritln(executecmd); в cmd все работает прекрасно. Может кто-то сказать, что я делаю не так?

Answer 1

Проблем здесь:

String executeCmd = "mysqldump.exe -u " + dbUser + " -p " + dbPass;
executeCmd += " --all-databases > " + savePath;

Работает в таком виде:

String executeCmd = "mysqldump.exe -u " + dbUser + " -p" + dbPass+" dbName -r " + savePath;

Чем-то Java не устраивало -all-databases и > вместо -r.

READ ALSO
Автозамена атрибута в теге с помощью редактора кода

Автозамена атрибута в теге с помощью редактора кода

Хочу заменить в тегах <img> все атрибуты src на data-src, по всему проекту, но чтобы не затрагивались теги script, js-код и тп

194
Создание ячеек для игры &ldquo;Сапер&rdquo; на javascript

Создание ячеек для игры “Сапер” на javascript

Не знаю как создать ячейки для сапера в html/css/javascriptС помощью div'ов или как? Мне не хватает знаний для этого

210
Дубликат в другое поле с транслитом

Дубликат в другое поле с транслитом

Можно чуточку переделать скрипт, и сделать, чтоб при вводе в поле <input type="text" id="input"> текста, дубликал шел в <input type="text" id="input1">, но с транслитомА...

216
Не работает scroll() страницы

Не работает scroll() страницы

Подскажите, решение, пожалуйста

189