Runtime.exec nie jest powłoką
, więc przekierowania z> i mysqldump , która interpretuje ją jako nazwę tabeli, którą chcesz wyeksportować. (Stąd kod powrotu 6, „nielegalna tabela”).
Istnieją dwa rozwiązania:
-
Uruchom powłokę. Użyj tego polecenia zamiast tego, które masz:
cmd.exe /c "mysqldump --user=root --password= --host=localhost dbname > c:\temp\dumpfile.sql" -
Zapisz wynik polecenia do pliku samodzielnie, za pomocą
Process.getInputStream().