执行
cmd /c mysqldump -h127.0.0.1 -P3306 -uusername -ppassword dbname > d:\xxx.sql
红色标记分别是数据库:地址、端口、用户名、密码、数据库名称、备份sql文件位置
try {
ProcessBuilder processBuilder = new ProcessBuilder(new String[]{"cmd","/c","mysqldump","-h127.0.0.1","-P3306","-uroot","-p123456","test",">","C://db//backup//test_202233333333.sql"});
processBuilder.redirectErrorStream(true);
Process process = processBuilder.start();
InputStream inputStream = process.getInputStream();
BufferedReader bufferedReader = new BufferedReader(new InputStreamReader(inputStream,"GBK"));
process.waitFor();
if (process.exitValue() != 0) {
System.out.println(process.waitFor());
}
System.out.println("打印进程输出信息");
String info;
while ((info = bufferedReader.readLine()) != null){
System.out.println(info);
}
System.out.println("打印进程输出信息结束");
if (process.waitFor() == 0){//0 :表示执行成功
System.out.println("数据库备份成功");
}
}catch (Exception e) {
e.printStackTrace();
}
这个地方需要特别注意:
如果idea处于打开状态,设置了mysqldump的环境变量,idea是无法识别mysqldump命令,需要重启idea才行!!!