Linux下通过java备份mysql数据库,使用mysqldump

最近因公司需要基于java备份mysql数据库,按照网络上多数建议使用以下命令备份:mysqldump -uroot  -padmin minas >/usr/2.sql,使用该命令的java实现如下所示:

Runtime.getRuntime().exec("mysqldump -uroot  -padmin minas >/usr/2.sql");  

经测试发现:该语句{mysqldump -uroot  -padmin minas >/usr/2.sql}在linux下直接执行是没有错误的,但是基于jdk调用时,不能实现对其备份。

 

故给出以下解决方法:

1.利用whereis命令查看mysqldump命令所在路径.如:whereis mysqldump,得到结果为:mysqldump:  /usr/bin/mysqldump

2.将命令改为:/usr/bin/mysqldump -uroot  -padmin minas >/usr/2.sql

3.java实现为

          try{

             String[] cmd=new String[]{"/bin/sh ","-c ","/usr/bin/mysqldump -uroot  -padmin minas >/usr/2.sql "};

             Runtime.getRuntime().exec(cmd);          

            }catch(Exception e){

            }

 

mysqldump中参数的使用可参照baidu。

from:cnxieyang@163.com

  • 5
    点赞
  • 18
    收藏
    觉得还不错? 一键收藏
  • 8
    评论
评论 8
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值