Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

mysqldump retorna o código 6 quando executado a partir de java, mas o mesmo comando funciona bem na linha de comando


Runtime.exec não é um shell , então redirecionamentos com> e > para mysqldump , que o interpreta como o nome da tabela que você deseja exportar. (Daí o código de retorno 6, "tabela ilegal".)

Existem duas soluções:

  1. Execute um shell. Use este comando em vez do que você tem:
    cmd.exe /c "mysqldump --user=root --password= --host=localhost dbname > c:\temp\dumpfile.sql"
    

  2. Grave a saída do comando em um arquivo você mesmo, com Process.getInputStream() .