Java程序中实现 MySQL数据库的备份与还原


案例代码:

数据库备份

复制代码
 1     //mysqldump -h端口号 -u用户 -p密码 数据库 > d:/test.sql --备份D盘
 2     //备份
 3     public static void dataBaseDump(String port,String username,String password,String databasename,String sqlname) throws Exception {
 4         File file = new File("F:\\test");
 5         if ( !file.exists() ){
 6             file.mkdir();
 7         }
 8         File datafile = new File(file+File.separator+sqlname+".sql");
 9         if( datafile.exists() ){
10             System.out.println(sqlname+"文件名已存在,请更换");
11             return ;
12         }
13         //拼接cmd命令
14         Process exec = Runtime.getRuntime().exec("cmd /c mysqldump -h"+port+" -u "+username+" -p"+password+" "+databasename+" > "+datafile);
15         if( exec.waitFor() == 0){
16             System.out.println("数据库备份成功,备份路径为:"+datafile);
17         }
18     }
复制代码

数据库还原

复制代码
    //还原
    //mysql -h端口号 -u用户 -p密码 数据库 < d:/test.sql 恢复到数据库中
    public static void backup(String port,String username,String password,String databasename,String sqlname) throws Exception {
        File datafile = new File("F:\\test\\"+sqlname+".sql");
        if( !datafile.exists() ){
            System.out.println(sqlname+"文件不已存在,请检查");
            return ;
        }
        //拼接cmd命令
        Process exec = Runtime.getRuntime().exec("cmd /c mysql -h"+port+" -u "+username+" -p"+password+" "+databasename+" < "+datafile);
        if( exec.waitFor() == 0){
            System.out.println("数据库还原成功,还原的文件为:"+datafile);
        }
    }
复制代码


免责声明!

本站转载的文章为个人学习借鉴使用,本站对版权不负任何法律责任。如果侵犯了您的隐私权益,请联系本站邮箱yoyou2525@163.com删除。



 
粤ICP备18138465号  © 2018-2025 CODEPRJ.COM