ackage org.yu.dbback;
import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStream;
import java.io.InputStreamReader;
import java.util.ArrayList;
import java.util.List;
public class DbBackMain extends Thread{
private InputStream insp = null;
private String type;
public DbBackMain(InputStream is, String type) {
insp = is;
this.type = type;
}
/**
* 备份数据库
*
*/
public static void runback() {
Runtime cmd = Runtime.getRuntime();
List<String> backup = new ArrayList<String>();
backup.add("mysqldump");
backup.add("--opt");
backup.add("--user=root");
backup.add("--lock-all-tables=true");
backup.add("--result-file=c:\\back_test.sql");
backup.add("test");
try {
Process p = cmd.exec((String[])backup.toArray(new String[0]),null);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
/**
* 还原数据库
*
*/
public static void reback() {
Runtime cmd = Runtime.getRuntime();
List<String> sources = new ArrayList<String>();
sources.add("cmd.exe");
sources.add("/C");
sources.add("mysql < c:\\back_test.sql");
sources.add("--user=root");
sources.add("--database=test");
try {
Process p = cmd.exec((String[])sources.toArray(new String[0]),null);
DbBackMain dberror = new DbBackMain(p.getInputStream(),"ERROR");
DbBackMain dboutput = new DbBackMain(p.getInputStream(),"OUTPUT");
dberror.start();
dboutput.start();
System.out.println(p.waitFor());
} catch (Exception e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
public void run() {
try {
InputStreamReader isr = new InputStreamReader(insp);
BufferedReader br = new BufferedReader(isr);
String line = null;
while((line = br.readLine()) != null) {
System.out.println(type + ">" + line);
}
}
catch (IOException ioe) {
ioe.printStackTrace();
}
}
public static void main(String[] args) {
runback();
// reback();
}
}
分享到:
相关推荐
本文将深入探讨如何使用Java语言来实现MySQL数据库的备份与还原功能,这是一个跨平台的解决方案,无论是在Windows还是Linux环境下都能正常工作。 首先,让我们了解备份和还原的基本概念。数据库备份是为了防止数据...
这里我们讨论的“数据库备份及还原Java源码”是一个基于Swing开发的客户端程序,专用于MySQL数据库的备份和恢复操作。下面我们将深入探讨相关知识点。 1. **数据库备份**: - **全量备份**:备份整个数据库,包括...
Java作为一种广泛使用的编程语言,提供了多种方法来处理数据库的备份与还原操作。在这个主题中,我们将深入探讨如何利用Java来实现这一功能,主要关注MySQL、Oracle、SQL Server等主流数据库系统。 1. **数据库备份...
MySQL数据库在日常运维中扮演着至关重要的角色,因此掌握如何进行完整备份、增量备份与还原是每个IT专业人员必备的技能。在这个主题中,我们将深入探讨如何使用Java来实现这些功能。 首先,让我们理解什么是数据库...
在Java开发中,数据库的备份与还原是至关重要的任务,特别是在大型系统中,确保数据的安全性和完整性至关重要。本文将详细讲解如何使用Java实现基于MySQL数据库的备份与还原操作。 首先,我们了解到数据库备份通常...
利用java语言,备份mysql数据库,还原mysql数据库
Java 实现 SqlServer 及 MySql 的备份与还原 Java 实现 SqlServer 及 MySql 的备份与还原是通过使用 Java 语言来实现数据库的备份和还原操作。本文将介绍如何使用 Java 语言来实现 SqlServer 及 MySql 的备份与还原...
Java还原Oracle数据库是指使用Java语言编写的程序来还原Oracle数据库,恢复的过程中需要使用Oracle的IMP工具来将备份文件导入到数据库中。下面是Java还原Oracle数据库的主要知识点: 1. 使用IMP工具还原数据库:IMP...
总的来说,通过Java实现远程Oracle数据库的备份与还原是一项复杂但实用的任务,它依赖于对Java编程、Oracle数据库和网络I/O的深入理解。通过精心设计和实现,我们可以创建一个强大且可靠的工具,为数据库管理提供...
"java_部署文件备份"这个主题涵盖了Java应用的部署过程以及如何有效地进行备份,以防止数据丢失或系统故障。下面将详细讨论相关知识点。 1. **Java部署**:Java应用部署通常涉及以下步骤: - 编译源代码:使用JDK...
Java在线备份和还原MySQL数据库,使用mysqldump命令实现备份,使用mysql命令实现的还原,具体大家看源代码吧,在还原的时候足足整了我一个下午才找到错误原因,源代码里面有写原因。大家看代码就知道了。
本篇将通过一个简单的JAVA程序示例,探讨如何实现Oracle数据库的备份与还原操作。 首先,我们需要了解Oracle数据库的备份方式。常见的备份策略包括物理备份(如使用RMAN,即恢复管理器)和逻辑备份(如SQL脚本导出...
例如,我们可以编写一个Java方法,该方法负责执行数据库的完整备份,然后将其添加到定时任务中,按需设定执行频率,如每天或每周一次。 备份数据库的基本步骤包括: 1. 连接数据库:使用JDBC建立与MySQL服务器的...
4. **还原备份文件**:选择备份文件所在路径,输入备份文件的日期和时间信息,按照向导提示完成恢复操作。 #### 三、使用命令行方式进行备份和还原 ##### 3.1 命令行方式备份数据库 1. **创建备份文件夹**:在...
在本例中,我们使用了一个名为 `Mysql` 的 Java Bean 来封装 MySQL 数据库备份与还原的操作。 ##### 2. 使用 Runtime 类执行系统命令 Java 提供了 `Runtime` 类来执行外部命令或程序。这在处理操作系统级别的任务...
【Java实现SQL Server及MySQL备份与还原】 在Java开发中,有时我们需要对数据库进行备份和还原操作,以确保数据的安全性和可恢复性。本篇将详细介绍如何使用Java来实现SQL Server和MySQL这两种常见数据库的备份与...
总结来说,使用Java备份和还原MySQL数据库主要涉及以下几个步骤: 1. 引入MySQL JDBC驱动。 2. 使用`Runtime.getRuntime().exec()`执行`mysqldump`进行备份。 3. 存储备份文件。 4. 使用`Runtime.getRuntime().exec...
以下是一个简单的Java还原示例: ```java public void restoreDatabase(String databaseName, String backupFilePath) { String command = "mysql -u root -p[password] " + databaseName + " ; try { Process ...
JAVA实现数据库备份与还原.pdf