java备份MySQL (windows linux)
2009-11-27 21:09:15 来源:WEB开发网核心提示:作为初级的管理员,每天都要备份数据,java备份MySQL (windows linux),自动的任务不会设置,于是‘基本靠手’,sql文件没有生成,我已开始用了以下几种写法:java.lang.Runtime.getRuntime().exec(new String[] { mysql }); java.lang.R
作为初级的管理员,每天都要备份数据,自动的任务不会设置,于是‘基本靠手’,这样不但繁琐,还保不齐甲流隔离了,有手没处使。
所以写个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目录加上了。
所以写个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目录加上了。
赞助商链接