Chinaunix首页 | 论坛 | 博客
  • 博客访问: 547466
  • 博文数量: 136
  • 博客积分: 4010
  • 博客等级: 上校
  • 技术积分: 1343
  • 用 户 组: 普通用户
  • 注册时间: 2008-08-19 23:18
文章分类

全部博文(136)

文章存档

2011年(28)

2009年(60)

2008年(48)

我的朋友

分类:

2009-05-08 21:08:43

注:要将mysql的bin目录加入到环境变量Path中

将MySql中的数据库导出到文件中 备份

import java.io.*;
import java.lang.*;

public class BeiFen {

public static void main(String[] args) {
  // 数据库导出
  String user = "root"; // 数据库帐号
  String password = "root"; // 登陆密码
  String database = "test"; // 需要备份的数据库名
  String filepath = "e:\\test.sql"; // 备份的路径地址 

  //注意mysqldump是调用mysql数据库的一个组件,在未在系统变量中声明的话,要在这里写mysqldump的完整路径
  String stmt1 = "mysqldump " + database + " -u " + user + " -p"
  + password + " --result-file=" + filepath;
  /*
  * String mysql="mysqldump test -u root -proot
  * --result-file=d:\\test.sql";
  */

  try {
  Runtime.getRuntime().exec(stmt1);
  System.out.println("数据已导出到文件" + filepath + "中");
  }
  catch (IOException e) {
  e.printStackTrace();
  }
}
}



将数据从磁盘上的文本文件还原到MySql中的数据库

import java.io.*;
import java.lang.*;

/*
* 还原MySql数据库
* */
public class Recover {

public static void main(String[] args) {

  String filepath = "d:\\test.sql"; // 备份的路径地址 
  //新建数据库test

  String stmt1 = "mysqladmin -u root -proot create test";

  String stmt2 = "mysql -u root -proot test < " + filepath;
  String[] cmd = { "cmd", "/c", stmt2 };

  try {
  Runtime.getRuntime().exec(stmt1);
  Runtime.getRuntime().exec(cmd);
  System.out.println("数据已从 " + filepath + " 导入到数据库中");
  } catch (IOException e) {
  e.printStackTrace();
  } 
}
}

阅读(4319) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~