/ 中存储网

利用java程序备份mysql数据库

2014-07-13 16:46:47 来源:中存储网
作为初级的管理员,每天都要备份数据,自动的任务不会设置,于是‘基本靠手’,这样不但繁琐,还保不齐甲流隔离了,有手没处使。   所以写个java类吧,加载到SPRING程序的自动运行任务中。思路就是使用java调用系统的命令符,执行MySQLdump命令。

首先是Windows系统下:
给大家提个醒:
有人说用:“mysqldump --uroot --p123456 --opt”。但是我没有成功,最后使用这种写法成功了:“mysqldump --user=root --passWord=123456 --opt”
看来要写完整的方式。

然后是linux系统下:
这里很多人遇到的问题是
程序不报错,命令不执行,sql文件没有生成。我已开始用了以下几种写法:java.lang.Runtime.getRuntime().exec(new String[] { mysql });
   java.lang.Runtime.getRuntime().exec(new String[] { "shell "+mysql });
   java.lang.Runtime.getRuntime().exec(new String[] { "/bin/bash "+mysql });
   java.lang.Runtime.getRuntime().exec(new String[] { "/bin/bash/shell "+mysql });
都没有成功,最后试验了这种写法成功了:
        java.lang.Runtime.getRuntime().exec(new String[] { "sh", "-c", mysql });
前提是环境变量中都把MySQL的bin目录加上了。