设为首页 加入收藏

TOP

Java 在Window及Linux下备份MySQL数据库(三)
2014-11-24 07:23:51 来源: 作者: 【 】 浏览:2
Tags:Java Window Linux 备份 MySQL 数据库
er(
new FileInputStream(fPath), "utf8"));
while ((inStr = br.readLine()) != null) {
sb.append(inStr + "\r\n");
}
outStr = sb.toString();
OutputStreamWriter writer = new OutputStreamWriter(out, "utf8");
writer.write(outStr);
// 注:这里如果用缓冲方式写入文件的话,会导致中文乱码,用flush()方法则可以避免
writer.flush();
out.close();
br.close();
writer.close();
} catch (Exception e) {
e.printStackTrace();
}
}


// 当用户恢复数据的时候,直接传一个上传的文件给这个方法,就可以对数据库进行恢复了
public void restoreMysqlFromFile(File f) {
try {
FileInputStream fis = new FileInputStream(f);
Runtime rt = Runtime.getRuntime();
Process child = rt.exec("mysql -uroot -p1234 114la");
// 这里执行的是mysql命令,用户名,密码以及要恢复的数据库,命令执行完后会从我们上传的文件里面读取要执行的内容
OutputStream out = child.getOutputStream();
// 控制台的输入信息作为输出流
String inStr;
StringBuffer sb = new StringBuffer("");
String outStr;
BufferedReader br = new BufferedReader(new InputStreamReader(fis,
"utf8"));
while ((inStr = br.readLine()) != null) {
sb.append(inStr + "\r\n");
}
outStr = sb.toString();
OutputStreamWriter writer = new OutputStreamWriter(out, "utf8");
writer.write(outStr);
// 注:这里如果用缓冲方式写入文件的话,会导致中文乱码,用flush()方法则可以避免
writer.flush();
out.close();
br.close();
writer.close();
fis.close();
} catch (Exception e) {
e.printStackTrace();
}
}


}


首页 上一页 1 2 3 下一页 尾页 3/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
分享到: 
上一篇Linux Bash编程基础 下一篇Linux下一个简单的客户端和服务端

评论

帐  号: 密码: (新用户注册)
验 证 码:
表  情:
内  容:

·数据库:推荐几款 Re (2025-12-25 12:17:11)
·如何最简单、通俗地 (2025-12-25 12:17:09)
·什么是Redis?为什么 (2025-12-25 12:17:06)
·对于一个想入坑Linux (2025-12-25 11:49:07)
·Linux 怎么读? (2025-12-25 11:49:04)