java代码--mysql数据的备份和还原

原创 2015年07月08日 15:55:54

备份数据库的代码:

/**
	 * mysql数据库备份
	 * 
	 * @param savePath
	 * @param fileName
	 * @param hostIP
	 * @param userName
	 * @param passWord
	 * @param databaseName
	 */
	public static void backup(String savePath, String fileName, String hostIP,
			String userName, String passWord, String databaseName) {
		try {
			Runtime rt = Runtime.getRuntime();
			System.out.println("备份开始······");

			Process child = rt.exec("mysqldump -h " + hostIP + " -u" + userName
					+ " -p" + passWord + "  " + databaseName);

			InputStream in = child.getInputStream();

			InputStreamReader xx = new InputStreamReader(in, "utf-8");

			String inStr;
			StringBuffer sb = new StringBuffer("");
			String outStr;

			BufferedReader br = new BufferedReader(xx);
			while ((inStr = br.readLine()) != null) {
				sb.append(inStr + "\r\n");
			}
			outStr = sb.toString();

			File saveFile = new File(savePath);
			if (!saveFile.exists()) {
				saveFile.mkdirs();
			}
			FileOutputStream fout = new FileOutputStream(savePath + "/"
					+ fileName + ".sql");
			OutputStreamWriter writer = new OutputStreamWriter(fout, "utf-8");
			writer.write(outStr);
			writer.flush();
			in.close();
			xx.close();
			br.close();
			writer.close();
			fout.close();

			System.out.println("");
			System.out.println("备份成功······");

		} catch (Exception e) {
			e.printStackTrace();
			System.out.println("备份失败······");
		}

	}
还原数据库的代码:
/**
	 * Mysql数据库的还原
	 * 
	 * @param fPath
	 * @param hostIP
	 * @param userName
	 * @param passWord
	 * @param databaseName
	 */
	public static void load1(String fPath, String hostIP, String userName,
			String passWord, String databaseName) {
		try {
			System.out.println("还原开始·······");
			// String fPath = "c:/test.sql";

			Runtime rt = Runtime.getRuntime();

			// 调用mysql的cmd命令
			Process child = rt.exec("mysql -u" + userName + " -p" + passWord
					+ "  " + databaseName);
			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);

			writer.flush();

			out.close();
			br.close();
			writer.close();

			System.out.println("");
			System.out.println("还原成功······");
		} catch (Exception e) {
			e.printStackTrace();
			System.out.println("还原失败······");
		}

	}
	
测试代码:

public static void main(String args[]) throws IOException {
		
		
		/**************** 测试Mysql数据库的备份begin **************************************/
		/*String hostIP = "localhost";
		String userName = "root";
		String passWord = "root";
		String databaseName = "db_test";
		String savePath = "F:/backup";
		String fileName = "db_test11";
		String fPath = "F:/backup/db_test.sql";

		backup(savePath, fileName, hostIP, userName, passWord, databaseName);
		load1(fPath, hostIP, userName, passWord, databaseName);*/
		/******************************* 测试Mysql数据库的备份end **************************************/

	}


版权声明:本文为博主原创文章,未经博主允许不得转载。

Java备份和还原MySQL数据库

网络上有很多关于Java程序中备份和还原
  • zhangyihui1986
  • zhangyihui1986
  • 2014年09月23日 11:57
  • 4238

java实现Mysql的备份与还原

import java.io.File; import java.io.IOException; import java.io.InputStream; import java.util.Proper...
  • dong_18383219470
  • dong_18383219470
  • 2016年10月14日 14:22
  • 1486

使用java代码备份和还原数据

package cn.ogsu.vod.util; import java.io.BufferedReader; import java.io.File; import java.io....
  • u011922760
  • u011922760
  • 2016年10月11日 09:45
  • 1065

用Java代码备份和还原MySQL数据库

用Java代码备份和还原MySQL数据库 package com.liuzy.javaopen.servlet; import java.io.BufferedReader; import ...
  • lzy1357986420
  • lzy1357986420
  • 2016年07月21日 22:49
  • 2070

mysql数据的备份还原三种方法

MySQL的备份和恢复: 为什么要对数据做备份?        数据备份主要是用于灾难恢复和测试要求,灾难恢复指硬件故障,软件故障,自然灾害,黑客攻击以及误操作; 备份分为以下几类:...
  • dingjixian
  • dingjixian
  • 2014年09月16日 03:34
  • 2515

mysql数据备份与还原纷

http://sh.58.com/huangpu/jdyd/jh_%e6%a1%82%e6%9e%97%e5%93%aa%e9%87%8c%e4%b9%b0%e8%bf%b7%e6%98%8f%e8%...
  • zqkrf66684
  • zqkrf66684
  • 2014年07月12日 23:12
  • 164

java jsp实现mysql备份还原 代码

  • 2008年01月04日 11:56
  • 727B
  • 下载

mysql数据库备份--java代码

import java.io.BufferedReader; import java.io.BufferedWriter; import java.io.FileInputStream; import...
  • afgasdg
  • afgasdg
  • 2011年11月10日 20:40
  • 1918

MySQL数据备份多种方法

  • 2012年08月11日 14:31
  • 45KB
  • 下载

mysql数据备份与还原

  • 2012年12月17日 12:23
  • 146KB
  • 下载
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:java代码--mysql数据的备份和还原
举报原因:
原因补充:

(最多只允许输入30个字)