实现DB2数据库自动备份的实际操作步骤

数据库
以下的文章主要向大家讲述的是实现DB2数据库自动备份的实际操作步骤的描述,我们是从编写BAK.java的实际操作代码开始对其进行讲起的。

以下的文章主要描述的是实现DB2数据库自动备份的实际操作步骤的描述,首先我们是从编写BAK.java的实际操作代码开始的,以下就是文章的主要内容的详细描述,望大家在浏览之后会对其有更深的了解。

DB2, 数据库, 备份数据库, 自动

 

步骤如下:

 

(1) 编写BAK.java,代码如下:(一周内周六完备、其他日期增量备份)

import java.util.Date;  
public class BAK {  
public static void main(String[] args) throws Exception{  
Runtime runtime = Runtime.getRuntime();  
  • 1.
  • 2.
  • 3.
  • 4.

断开数据库连接

Process proc = runtime.exec("db2cmd /c db2 force application all"); 
  • 1.

只保留一天的DB2数据库自动备份

runtime.exec("del d:\\backup\\db2bak\\autobak\\DATACTR.0\\ /S /F /Q");  
runtime.exec("del d:\\backup\\db2bak\\autobak\\RONE.0\\ /S /F /Q");  
  • 1.
  • 2.

暂停n秒

Thread.currentThread().sleep(5000); 
  • 1.

关闭上述进程

proc.destroy(); 
  • 1.

暂停n秒,等待数据库连接断开

Thread.currentThread().sleep(5000); 
  • 1.

备份

proc = runtime.exec("db2cmd db2 backup db DATACTR");  
Thread.currentThread().sleep(5000);  
proc.destroy();   
Date date = new Date();  
int dayOfTheWeek = date.getDay();  
if (dayOfTheWeek != 6){  
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.

不是周六,进行增量DB2数据库自动备份

 proc = runtime.exec("db2cmd db2 backup db yndc incremental");  
proc = runtime.exec("db2cmd /c db2 backup db yndc incremental");  
}  
else{  
  • 1.
  • 2.
  • 3.
  • 4.

是周六,进行完全备份

proc = runtime.exec("db2cmd /c db2 backup db yndc");  
}  
proc = runtime.exec("db2cmd db2 backup db gather");  
proc = runtime.exec("db2cmd /c db2 backup db codebase");  
proc = runtime.exec("db2cmd /c db2 backup db rone");  
proc = runtime.exec("db2cmd db2 backup db datactr");  
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.
  • 6.

暂停5秒

Thread.currentThread().sleep(5000);  
proc.destroy();  
restart db2  
proc = runtime.exec("db2start");  
  • 1.
  • 2.
  • 3.
  • 4.

暂停5秒

Thread.currentThread().sleep(5000);  
proc.destroy();  
runtime.exit(0);  
}  
}  
  • 1.
  • 2.
  • 3.
  • 4.
  • 5.

(2)编写run.bat,编译BAK.java并执行(注意需设置windows环境变量指向jdk的bin目录,在cmd下敲入命令"java"能找到这个命令,以支持编译和执行BAK.java

javac -deprecation BAK.java  
java BAK  
  • 1.
  • 2.

(3)通过windows的任务计划每天晚上定时调用run.bat进行数据库备份,譬如每晚22:00

(4)配合winzip软件可实现数据库的异机DB2数据库自动备份,定时将备份目录压缩至另一台机器的硬盘上(可映射成本地机器的网络硬盘。)

注意:db2 backup命令不支持将备份文件直接备份到网络硬盘上,将提示无法识别盘符。可根据需求选择离线备份或者在线备份。

【编辑推荐】

  1. DB2数据库优化策略的正确理解
  2. 我国IPTV研究目全球领先
  3. DB2编程的正确应用程序
  4. DB2 9打开打开通往 XML 之门的钥匙
  5. 如何看待IBM DB2 9数据服务器的发展?
责任编辑:佚名 来源: 清华大学出版社
相关推荐

2010-08-03 09:32:19

DB2在线备份

2010-08-03 09:49:58

DB2恢复数据库

2010-08-03 09:44:42

DB2在线增量备份

2010-08-03 13:56:11

DB2表复制

2010-08-12 09:25:22

DB2数据库复原

2010-07-27 11:20:02

DB2打补丁

2010-08-12 10:22:21

DB2定期自动备份

2010-07-30 14:38:25

DB2数据库

2010-09-07 13:04:20

DB2数据库

2010-08-12 10:27:21

DB2数据库备份

2010-07-29 08:40:16

DB2数据库

2010-08-02 09:10:45

JDBC连接DB2

2010-08-05 14:34:26

DB2存储过程

2010-08-12 17:36:48

DB2还原某个表空间

2010-08-05 11:34:01

DB2 代码

2010-08-05 09:33:31

DB2数据库卸载

2010-08-18 09:18:10

DB2求剩余数据库空间

2010-08-05 13:10:11

DB2代码

2010-07-28 08:58:50

DB2并行索引

2010-08-12 09:49:51

优化DB2数据库备份
点赞
收藏

51CTO技术栈公众号