如何使用java程序备份和恢复MySql数据库?
注:要将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"; // 备份的路径地址
String stmt1 = "D:\\mysql5027\\bin\\mysqldump " + database + " -u " + user + " -p"
+ password + " --result-file=" + filepath;
/*
* 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();
}
}
}
另外的程序
package jakie;
//import java.io.*;
public class Backup {
private String user_name;//数据库用户名
private String user_psw;//数据库密码
private String db_name;// 需要备份的数据库名
private String host_ip;
private String user_charset;
private String backup_path; //存放备份文件的路径
private String stmt;
public Backup(String user_name,String user_psw,String db_name,String host_ip,String user_charset,String backup_path){
this.user_name=user_name;
this.user_psw=user_psw;
this.db_name=db_name;
//主机IP;
if(host_ip==null||host_ip.equals(""))
this.host_ip="localhost";//默认为本机
else
this.host_ip=host_ip;
//字符集
if(user_charset==null||user_charset.equals(""))
this.user_charset=" "; //默认为安装时设置的字符集
else
this.user_charset=" --default-character-set="+user_charset;
this.backup_path=backup_path;
this.stmt="d:\\MYSQL\\bin\\mysqldump "+this.db_name+" -h "+this.host_ip+" -u"+this.user_name+" -p"+this.user_psw
+this.user_charset+" --result-file="+this.backup_path;
}
public boolean backup_run(){
boolean run_result=false;
try{
Runtime.getRuntime().exec(this.stmt);
run_result=true;
}catch(Exception e){
e.printStackTrace();
}finally{
return run_result;
}
}
public static void main(String[] args){
Backup backup=new Backup("root","000000","jakie",null,"utf8","e:\\test.sql");
boolean result=backup.backup_run();
if(result)
System.out.println("备份成功");
}
}
分享到:
相关推荐
接下来,我们来看如何编写Java代码来备份MySQL数据库。这通常涉及到执行`mysqldump`命令,这是一个MySQL提供的工具,可以生成数据库或表的SQL语句。在Java中,我们可以使用`ProcessBuilder`类来执行系统命令。以下是...
下面将详细介绍如何通过CMD(命令提示符)和Java来使用mysqldump进行MySQL数据库的备份。 ### CMD备份 在Windows系统中,我们通常使用CMD(命令提示符)来执行mysqldump命令。首先,确保MySQL服务器已运行,并且...
Java在线备份和还原MySQL数据库,使用mysqldump命令实现备份,使用mysql命令实现的还原,具体大家看源代码吧,在还原的时候足足整了我一个下午才找到错误原因,源代码里面有写原因。大家看代码就知道了。
标题“Java备份MySQL数据库”指的是使用Java编程语言来创建一个程序,该程序能够对MySQL数据库进行备份操作。这种备份通常涉及导出数据库的结构和数据,以便在需要时可以恢复到某个特定时间点的状态。在Java中实现这...
首先,备份MySQL数据库通常涉及两种主要方式:全量备份和增量备份。全量备份是指备份整个数据库,包括所有的表、索引、用户权限等信息。增量备份则只备份自上次备份以来发生改变的数据,这样可以节省存储空间。Java...
首先,`MysqlBackup.java` 文件很可能是实现备份和恢复功能的核心Java类。在SpringBoot中,我们可以利用JDBC(Java Database Connectivity)API或者Spring Data JPA等库来与MySQL交互。以下是一般备份和恢复过程的...
利用JDBC连接数据库,不依耐mysql的shell命令, 适合b/s 服务器备份
本文将深入探讨如何使用Java语言来实现MySQL数据库的备份与还原功能,这是一个跨平台的解决方案,无论是在Windows还是Linux环境下都能正常工作。 首先,让我们了解备份和还原的基本概念。数据库备份是为了防止数据...
这个“通过Java代码备份Mysql数据库Demo”是一个简单的示例,旨在帮助开发者快速理解和实践这一功能,从而节省学习和调试的时间。 首先,我们需要了解Java中用于连接MySQL数据库的JDBC(Java Database Connectivity...
标题中的“自动备份数据库java源码”指的是使用Java编程语言编写的一种程序,它的主要功能是自动化执行数据库的备份任务。数据库备份是数据保护的重要环节,它可以在数据丢失或系统故障时恢复数据,确保业务连续性。...
在实际应用中,定时备份数据库是一件非常重要的工作,下面是关于利用java程序实现数据库自动调用的方法,其实也不一定非要用 java语言了,只要原理会了...话不多说,下面就来演示一下如何自动备份mysql下的abc数据库:
总之,实现Java定时备份MySQL数据库需要理解如何在Java中调用外部命令,如何创建定时任务,以及如何与Spring等框架集成。在SSM项目中,可以利用Spring的定时任务特性来优雅地管理备份任务。记得在实际应用中处理异常...
本文将详细讲解如何使用Java实现从MySQL数据库的表导出到Excel文件的过程,以及涉及到的关键技术和工具。 首先,我们需要了解的是Java与数据库交互的基础——JDBC(Java Database Connectivity)。JDBC是Java API,...
要进行MySQL数据库备份,我们通常会执行`mysqldump`命令,这是一个用于备份MySQL数据库的实用工具。然而,在Java中,我们可以使用JDBC(Java Database Connectivity)API来模拟这个过程。首先,我们需要创建一个JDBC...
3. **CmdUtil.java** - 在Linux和Windows系统中,备份MySQL数据库的常见方式之一是通过执行操作系统命令,比如`mysqldump`。这个类可能包含了运行操作系统命令的函数,使用Java的Runtime或ProcessBuilder类来执行...
MySQL数据库在日常运维中扮演着至关重要的角色,因此掌握如何进行完整备份、增量备份与还原是每个IT专业人员必备的技能。在这个主题中,我们将深入探讨如何使用Java来实现这些功能。 首先,让我们理解什么是数据库...
本文将深入探讨如何使用Java来实现这一功能,特别是针对MySQL数据库的备份。结合提供的标题"java实现数据库容灾备份"和描述"可以集成定时任务去实时备份或者定期备份,欢迎一起讨论",我们将详细介绍如何利用Java...
上述代码展示了如何使用Java来实现MySQL数据库的备份和还原操作。以下是对这些操作的详细解释: 首先,代码导入了多个Java库,包括`java.io`包下的类,用于处理输入/输出流,以及`java.util`包下的类,如`Date`和`...
在本文中,我们将介绍三种不同的Mysql数据库定时备份方法,包括手动备份、使用定时任务备份和Java代码添加监听备份。 手动备份 手动备份是最简单的一种备份方法,只需要使用mysqldump命令将数据库备份到文件中。...
在Java编程中,有时我们需要对MySQL数据库进行导入和导出操作,这通常涉及到数据库的备份、迁移或数据恢复。在给定的标题“java调用mysql命令 导入导出数据库”中,我们可以理解为使用Java来执行MySQL的命令行工具,...