基于java的MySql的备份与恢复(二)

数据库文件的恢复

private boolean reduction(String saveUrl) {
        boolean flag = false;
        try {      
            String fPath = saveUrl;    
            Runtime rt = Runtime.getRuntime();      
            // 调用 mysql 的 cmd:      
            Process child = rt.exec(MYSQLURL2+SQLNAME);      
            OutputStream out = child.getOutputStream();//控制台的输入信息作为输出流      
            String inStr;      
            StringBuffer sb = new StringBuffer("");      
            String outStr;      
            BufferedReader br = new BufferedReader(new InputStreamReader(      
                    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();      
            flag = true;

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

其中,MYSQLURL2为调用mysql的cmd

private static final String MYSQLURL2 = "C:/Program Files/MySQL/MySQL Server 5.5/bin/mysql.exe -uroot -p123456 ";
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值