Runtime.exec
bukan cangkang
, jadi pengalihan dengan> dan mysqldump
, yang mengartikannya sebagai nama untuk tabel yang ingin Anda ekspor. (Maka kembalikan kode 6, "meja ilegal".)
Ada dua solusi:
-
Jalankan cangkang. Gunakan perintah ini alih-alih yang Anda miliki:
cmd.exe /c "mysqldump --user=root --password= --host=localhost dbname > c:\temp\dumpfile.sql"
-
Tulis output dari perintah ke file sendiri, dengan
Process.getInputStream()
.