您的位置:首页 > 数据库

IBM DB2 V8.2 数据库的备份以及恢复

2009-06-03 18:11 197 查看
第一章   离线完全备份数据库....................................................................................... 1

1.1.      创建测试数据库 TEST....................................................................................... 1

1.2.      创建测试表 T1................................................................................................... 1

1.3.      插入测试数据-1.................................................................................................. 1

1.4.      执行离线完全备份数据库................................................................................. 1

第二章   离线增量备份数据库....................................................................................... 1

2.1.      插入测试数据-2.................................................................................................. 1

2.2.      离线增量备份数据库......................................................................................... 1

2.2.1.       启用增量备份功能(重要)..................................................................... 1

2.2.2.       执行完全备份............................................................................................. 1

2.2.3.       插入测试数据-3.......................................................................................... 1

2.2.4.       执行增量备份数据库第一次..................................................................... 1

2.2.5.       插入测试数据-4.......................................................................................... 1

2.2.6.       执行增量备份数据库第二次..................................................................... 1

第三章   恢复离线完全备份数据库.............................................................................. 1

3.1.      模拟数据库灾难,删除数据库......................................................................... 1

3.2.      恢复至离线完全备份数据库............................................................................. 1

第四章   恢复离线增量备份数据库.............................................................................. 1

4.1.      第一种方法,手动恢复增量备份数据库......................................................... 1

4.2.      模拟数据库灾难,删除数据库......................................................................... 1

4.3.      执行恢复离线增量备份数据库......................................................................... 1

4.4.      第二种方法,自动恢复增量备份数据库......................................................... 1

第五章   附录..................................................................................................................... 1

5.1.      不同备份的异同................................................................................................. 1

 

 

 

 

 

--------------------------------------------------------------------------------

DB2 备份测试脚本

彭建军

DB2 版本:V8.2

2006-3-2 10:27

关键字:DB2 离线完全备份数据库,离线增量备份数据库,恢复数据库

--------------------------------------------------------------------------------

第一章           离线完全备份数据库
1.1. 创建测试数据库 TEST
--------------------------------------------------------------------------------

--命令

CREATE DATABASE TEST

--------------------------------------------------------------------------------

1.2. 创建测试表 T1
--------------------------------------------------------------------------------

--命令

CREATE TABLE T1

(

      --自增列

      ID INT NOT NULL GENERATED ALWAYS AS IDENTITY (START WITH 0,INCREMENT BY 1,NO CACHE),

      MESSAGE VARCHAR(50),

      PRIMARY KEY(ID)

);

--------------------------------------------------------------------------------

1.3. 插入测试数据-1
--------------------------------------------------------------------------------

--命令

INSERT INTO T1(MESSAGE)

      VALUES('STEP1:开始第一次离线完全备份');

--------------------------------------------------------------------------------

1.4. 执行离线完全备份数据库
1、CLP,进入准备备份目录,例如备份在C盘根目录,则 CD C:/

2、检查连接至数据库TEST的应用程序情况

--------------------------------------------------------------------------------

--命令1

DB2 LIST APPLICATIONS FOR DB TEST

--------------------------------------------------------------------------------

--如果返回值为空,则直接执行命令5;如果返回值只有一个,否则执行命令2,否则执行命令3

--强制断开应用程序的连接

--------------------------------------------------------------------------------

--命令2

DB2 FORCE APPLICATION(XXX)--XXX为应用程序句柄

--------------------------------------------------------------------------------

--强制断开所有应用程序的连接

--------------------------------------------------------------------------------

--命令3

DB2 STOP FORCE

--------------------------------------------------------------------------------

--启动DB2数据库管理器

--------------------------------------------------------------------------------

--命令4

DB2START

--------------------------------------------------------------------------------

--执行离线全备份

--------------------------------------------------------------------------------

--命令5

DB2 BACKUP DB TEST

--------------------------------------------------------------------------------

--笔者备份文件的时间戳为:20060302143417

 

--检查备份情况

--------------------------------------------------------------------------------

--命令6

DB2 LIST HISTORY BACKUP ALL FOR TEST

--------------------------------------------------------------------------------

第二章           离线增量备份数据库
2.1. 插入测试数据-2
--------------------------------------------------------------------------------

--命令

INSERT INTO T1(MESSAGE)

      VALUES('STEP2:开始第二次完全备份,为离线增量备份做准备');

--------------------------------------------------------------------------------

2.2. 离线增量备份数据库
2.2.1.    启用增量备份功能(重要)
--------------------------------------------------------------------------------

--命令(重要)

DB2 UPDATE DB CFG FOR TEST USING TRACKMOD YES

--------------------------------------------------------------------------------

2.2.2.    执行完全备份
说明:执行离线增量备份前需要完全备份一次(重要)

--------------------------------------------------------------------------------

--命令

DB2 BACKUP DB TEST

---------------------------------------------
4000
-----------------------------------

--笔者备份文件的时间戳为:20060302143909

--------------------------------------------------------------------------------

2.2.3.    插入测试数据-3
--------------------------------------------------------------------------------

--命令

INSERT INTO T1(MESSAGE)

      VALUES('STEP3:开始第一次离线增量备份');

--------------------------------------------------------------------------------

2.2.4.    执行增量备份数据库第一次
--------------------------------------------------------------------------------

--命令

DB2 BACKUP DB TEST INCREMENTAL

--------------------------------------------------------------------------------

--笔者备份文件的时间戳为:20060302144033

2.2.5.    插入测试数据-4
--------------------------------------------------------------------------------

--命令

INSERT INTO T1(MESSAGE)

      VALUES('STEP4:开始第二次离线增量备份');

--------------------------------------------------------------------------------

2.2.6.    执行增量备份数据库第二次
--------------------------------------------------------------------------------

--命令

DB2 BACKUP DB TEST INCREMENTAL

--------------------------------------------------------------------------------

--笔者备份文件的时间戳为:20060302144252

 

查看测试数据情况

--------------------------------------------------------------------------------

--命令

SELECT * FROM T1

--结果集

ID       MESSAGE

0         STEP1:开始离线完全备份

1         STEP2:开始第二次完全备份,为离线增量备份做准备

2         STEP3:开始第一次离线增量备份

3         STEP4:开始第二次离线增量备份

--------------------------------------------------------------------------------

第三章           恢复离线完全备份数据库
3.1. 模拟数据库灾难,删除数据库
断开所有应用程序的连接参见上面的语句:1.4

--------------------------------------------------------------------------------

--命令

DORP DATABASE TEST

--------------------------------------------------------------------------------

3.2. 恢复至离线完全备份数据库
--------------------------------------------------------------------------------

--命令

DB2 RESTORE DATABASE TEST FROM C:/ TAKEN AT 20060302143417

--------------------------------------------------------------------------------

查看测试数据情况

--------------------------------------------------------------------------------

--命令

SELECT * FROM T1

--结果集

ID       MESSAGE

0         STEP1:开始离线完全备份

--------------------------------------------------------------------------------

第四章           恢复离线增量备份数据库
4.1. 第一种方法,手动恢复增量备份数据库
示例:恢复至第二次离线增量备份,时间戳:20060302144252

4.2. 模拟数据库灾难,删除数据库
断开所有应用程序的连接参见上面的语句

--------------------------------------------------------------------------------

--命令

DORP DATABASE TEST

--------------------------------------------------------------------------------

4.3. 执行恢复离线增量备份数据库
--------------------------------------------------------------------------------

--1、恢复目标增量备份映像文件

--命令1

DB2 RESTORE DATABASE TEST INCREMENTAL FROM C:/ TAKEN AT 20060302144252

--2、恢复最近的一次完全备份文件

--命令2

DB2 RESTORE DATABASE TEST INCREMENTAL FROM C:/ TAKEN AT 20060302143909

3、恢复自最近的一次完全备份之后的第一次增量备份映像文件,依次类推

--命令3

DB2 RESTORE DATABASE TEST INCREMENTAL FROM C:/ TAKEN AT 20060302144033

3、恢复自第二次增量备份映像文件

--命令4

DB2 RESTORE DATABASE TEST INCREMENTAL FROM C:/ TAKEN AT 20060302144252

4、恢复自第N次增量备份映像文件,直至再次恢复目标增量备份映像文件为止。例如,需要恢复第一次增量备份映像文件,则需要首先恢复第一次增量备份映像,然后恢复至最近的一次完全备份映像文件,最后再恢复至第一次增量备份映像文件。

注意:目标增量备份映像文件会被还原两次(重要)

--------------------------------------------------------------------------------

 

查看测试数据情况

--------------------------------------------------------------------------------

--命令

SELECT * FROM T1

--结果集

ID       MESSAGE

0         STEP1:开始离线完全备份

1         STEP2:开始第二次完全备份,为离线增量备份做准备

2         STEP3:开始第一次离线增量备份

3         STEP4:开始第二次离线增量备份

--------------------------------------------------------------------------------

4.4. 第二种方法,自动恢复增量备份数据库
--------------------------------------------------------------------------------

--命令

DB2 RESTORE DATABASE TEST INCREMENTAL AUTOMATIC FROM C:/ TAKEN AT 20060302144033

--------------------------------------------------------------------------------

说明:执行自动恢复增量备份数据库时,系统自动执行手动恢复增量备份数据库的一系列命令。

第五章           附录
5.1. 不同备份的异同
完全备份:备份所有数据

增量备份:备份自上次完全备份以来更改过的数据

DELTA备份:备份自最近一次备份以来更改过的数据

 

当数据库数据量非常大,每次完全备份都需要耗费巨大的资源(时间、IO、CPU等)时,推荐使用增量备份。

以上命令以及结果均经过测试通过。

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/pengjj/archive/2006/03/02/613915.aspx
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息