加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 编程开发 > Java > 正文

Java 调用Mysql dump 备份数据库

发布时间:2020-12-15 03:22:54 所属栏目:Java 来源:网络整理
导读:今天PHP站长网 52php.cn把收集自互联网的代码分享给大家,仅供参考。 SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");try {String name = sdf.format(new Date());String filePath = System.getProperty

以下代码由PHP站长网 52php.cn收集自互联网

现在PHP站长网小编把它分享给大家,仅供参考

SimpleDateFormat sdf = new SimpleDateFormat("yyyyMMddHHmmss");

try {


String name = sdf.format(new Date());
String filePath = System.getProperty("user.dir") + "//" + name + ".sql";


// 系统执行器
Runtime rt = Runtime.getRuntime();


// 导出数据库语句
StringBuffer cmd = new StringBuffer();
cmd.append("mysqldump -u");
cmd.append(ServeConfig.dbUser);
cmd.append(" -p");
cmd.append(ServeConfig.dbPass);
cmd.append(" --set-charset=utf8 ");
cmd.append(ServeConfig.dbName);


// 执行导出获取输入流
Process child = rt.exec(cmd.toString());
InputStream in = child.getInputStream();
InputStreamReader ir = new InputStreamReader(in,"utf8");


// 输出文件
FileOutputStream fo = new FileOutputStream(filePath);
OutputStreamWriter os = new OutputStreamWriter(fo,"utf8");


// 开始读取数据
char[] temp = new char[1024000];
int len = 0;
while ((len = ir.read(temp)) > 0) {
os.write(temp,len);
os.flush();
}


// 别忘记关闭输入输出流
in.close();
ir.close();
os.close();
fo.close();


// 将文件发送到备份服务器
FileUpLoad upload = FileUpLoad.createFileUpLoad(ServeConfig.backAddr,new File(filePath));
upload.tryStart();
upload.waitFinish();
upload.doClose();


} catch (Exception e) {
e.printStackTrace();
}

以上内容由PHP站长网【52php.cn】收集整理供大家参考研究

如果以上内容对您有帮助,欢迎收藏、点赞、推荐、分享。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读