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()
.