Chinaunix首页 | 论坛 | 博客
  • 博客访问: 11299711
  • 博文数量: 8065
  • 博客积分: 10002
  • 博客等级: 中将
  • 技术积分: 96708
  • 用 户 组: 普通用户
  • 注册时间: 2008-04-16 17:06
文章分类

全部博文(8065)

文章存档

2008年(8065)

分类: 服务器与存储

2008-07-15 14:48:42

我完成了一个db2数据库备份的一个项目,现在把db2备份恢复需要修改和配置的整个过程贴出来,如果有错误的地方,请大家指出,没有错,请支持一下吧。谢谢。   
   这个过程可以应用于veritas在做它的备份之前的一些处理,也适合于ibm的tsm。  有关上述软件的配置部分我就不介绍了。   

    1. 创建好新的数据库后,首先做一个离线的全备。.

E:\Program Files\IBM\SQLLIB\BIN>;db2 connect to sample  #联接到数据库。

  数据库连接信息

数据库服务器     = DB2/NT 8.1.0
SQL 授权标识    = ADMINIST...
本地数据库别名    = SAMPLE

E:\Program Files\IBM\SQLLIB\BIN>;db2 list applications    #显示数据库应用状态

授权标识 应用程序名  应用程序  应用程序标识        DB   代理进程

            句柄                  名称  序列号
-------- -------------- ---------- ------------------------------ -------- ----

ADMINIST>;db2bp.exe   49     *LOCAL.DB2.003A47092910    SAMPLE  1

ADMINIST>;javaw.exe   48     *LOCAL.DB2.005F07092627    SAMPLE  1

ADMINIST>;javaw.exe   47     *LOCAL.DB2.005F07092626    SAMPLE  1



E:\Program Files\IBM\SQLLIB\BIN>;db2 force applications all  #停掉数据库应用。
DB20000I FORCE APPLICATION 命令成功完成。
DB21024I 该命令为异步的,可能不会立即生效。

E:\Program Files\IBM\SQLLIB\BIN>;db2 backup database sample to e:\db2\backup #做离线的全备。

备份成功。此备份映象的时间戳记是:20030507173349


E:\Program Files\IBM\SQLLIB\BIN>;db2 list history backup all for sample  #查看备份历史记录

          列示 sample 的历史文件

匹配的文件条目数 = 1


Op 对象 时间戳记+序列   类型 设备 最早日志  当前日志   备份标识
-- --- ------------------ ---- --- ------------ ------------ --------------
B D 20030507173349001  F  D S0000000.LOG S0000000.LOG
----------------------------------------------------------------------------
包含 2 表空间:

00001 SYSCATSPACE
00002 USERSPACE1
----------------------------------------------------------------------------
  注释:DB2 BACKUP SAMPLE OFFLINE
开始时间:20030507173349
  结束时间:20030507173410
----------------------------------------------------------------------------
00001 位置:e:\db2\backup\SAMPLE.0\DB2\NODE0000\CATN0000\20030507


2.如果要做在线的备份,要对两个参数作修改: USEREXIT和LOGRETAIN,将其修改为on,他们默认是off的,默认使用循环日志模式,修改完参数后,可以变为归档日志模式,启用了userexit做数据库日志的归档。


E:\Program Files\IBM\SQLLIB\BIN>;db2 get db cfg  #查看数据库当前的属性。

    数据库 的数据库配置

数据库配置发行版级别          = 0x0a00
数据库发行版级别                 = 0x0a00

数据库领域                   = CN
数据库代码页                   = 1386
数据库代码集                    = GBK
数据库国家/地区代码              = 86

动态 SQL 查询管理      (DYN_QUERY_MGMT) = DISABLE

对此数据库的 Discovery 支持    (DISCOVER_DB) = ENABLE

缺省查询优化类     (DFT_QUERYOPT) = 5
并行度           (DFT_DEGREE) = 1
在算术异常时继续  (DFT_SQLMATHWARN) = NO
缺省刷新有效期          (DFT_REFRESH_AGE) = 0
保留的高频值的数目   (NUM_FREQVALUES) = 10
保留的分位点数目      (NUM_QUANTILES) = 20

备份暂挂                     = NO

数据库是一致的                 = YES
前滚暂挂                   = NO
复原暂挂                     = NO

启用的多页文件分配           = NO

恢复状态的日志保留             = NO
记录状态的用户出口              = NO

Data Links 标记失效时间间隔(秒)   (DL_EXPINT) = 60
Data Links 写标记初始时间间隔 (DL_WT_IEXPINT) = 60
副本的 Data Links 数目       (DL_NUM_COPIES) = 1
删除后的 Data Links 时间(天数)    (DL_TIME_DROP) = 1
大写的 Data Links 标记        (DL_UPPER) = NO
Data Links 标记算法              (DL_TOKEN) = MAC0

数据库堆(4KB)              (DBHEAP) = 300
数据库共享内存大小(4KB) (DATABASE_MEMORY) = AUTOMATIC
目录高速缓存大小(4KB)       (CATALOGCACHE_SZ) = (MAXAPPLS*4)
日志缓冲区大小(4KB)            (LOGBUFSZ) = 8
实用程序堆大小(4KB)        (UTIL_HEAP_SZ) = 5000
缓冲池大小(页)           (BUFFPAGE) = 250
扩充存储段大小(4KB)  (ESTORE_SEG_SZ) = 16000
扩充存储段的数目  (NUM_ESTORE_SEGS) = 0
锁定列表的最大存储量(4KB)       (LOCKLIST) = 25

应用程序组内存集的最大大小(4KB)(APPGROUP_MEM_SZ) = 10000
应用程序组堆的内存百分比 (GROUPHEAP_RATIO) = 70
最大应用程序控制堆大小(4KB)   (APP_CTL_HEAP_SZ) = 64

共享排序的排序堆域值(4KB) (SHEAPTHRES_SHR) = (SHEAPTHRES)
排序列表堆(4KB)             (SORTHEAP) = 256
SQL 语句堆(4KB)           (STMTHEAP) = 2048
缺省应用程序堆(4KB)       (APPLHEAPSZ) = 256
程序包高速缓存大小(4KB)          (PCKCACHESZ) = (MAXAPPLS*
统计信息堆大小(4KB)        (STAT_HEAP_SZ) = 4384

检查死锁的时间间隔(ms)     (DLCHKTIME) = 10000
每个应用程序的锁定百分比列表    (MAXLOCKS) = 22
锁定超时(秒)            (LOCKTIMEOUT) = -1

更改的页阈值        (CHNGPGS_THRESH) = 60
异步页清除程序的数目  (NUM_IOCLEANERS) = 1
I/O 服务器的数目          (NUM_IOSERVERS) = 3
索引排序标志               (INDEXSORT) = YES
顺序检测标志           (SEQDETECT) = YES
缺省预取大小(页)     (DFT_PREFETCH_SZ) = 16

跟踪修改的页数             (TRACKMOD) = OFF

容器的缺省数目              = 1
缺省表空间数据块大小(页)  (DFT_EXTENT_SZ) = 32

活动应用程序的最大数目      (MAXAPPLS) = AUTOMATIC
活动应用程序的平均数目    (AVG_APPLS) = 1
每个应用程序的最大打开 DB 文件数      (MAXFILOP) = 64

日志文件大小(4KB)             (LOGFILSIZ) = 250
主日志文件的数目        (LOGPRIMARY) = 3
辅助日志文件的数目        (LOGSECOND) = 2
已更改的至日志文件的路径          (NEWLOGPATH) =
日志文件路径                      = E:\DB2\NODE0000\SQL00
001\SQLOGDIR\
溢出日志路径           (OVERFLOWLOGPATH) =
镜像日志路径             (MIRRORLOGPATH) =
第一活动日志文件                    =
磁盘上已满的块日志        (BLK_LOG_DSK_FUL) = NO
事务使用的最大活动日志空间的百分比(MAX_LOG) = 0
1 个活动 UOW 的活动日志文件的数目 (NUM_LOG_SPAN) = 0

组落实计数             (MINCOMMIT) = 1
软检查点前回收的日志文件的百分比 (SOFTMAX) = 100
启用的恢复的日志保留       (LOGRETAIN) = OFF    这两个参数默认是off
启用的记录的用户出口        (USEREXIT) = OFF

启用的自动重新启动           (AUTORESTART) = ON
索引重新创建时间            (INDEXREC) = SYSTEM (ACCESS)
loadrec 会话的缺省数目  (DFT_LOADREC_SES) = 1
要保留的数据库备份的数目  (NUM_DB_BACKUPS) = 12
恢复历史记录保留(天数)   (REC_HIS_RETENTN) = 366

TSM 管理类          (TSM_MGMTCLASS) =
TSM 节点名              (TSM_NODENAME) =
TSM 所有者                  (TSM_OWNER) =
TSM 密码               (TSM_PASSWORD) =



E:\Program Files\IBM\SQLLIB\BIN>;db2 update db cfg for sample using userexit on #设置参数
DB20000I UPDATE DATABASE CONFIGURATION 命令成功完成。
SQL1363W 为立即修改而提交的一个或多个参数未动态更改。对于这些配置参数,必须在所有应用程序都与此数据库断开连接之后,更改才会生效。


E:\Program Files\IBM\SQLLIB\BIN>;db2 update db cfg for sample using logretain on #设置参数
DB20000I UPDATE DATABASE CONFIGURATION 命令成功完成。
SQL1363W 为立即修改而提交的一个或多个参数未动态更改。对于这些配置参数,必须在所有应用程序都与此数据库断开连接之后,更改才会生效。


E:\Program Files\IBM\SQLLIB\BIN>;db2 force application all   #停掉应用
DB20000I FORCE APPLICATION 命令成功完成。
DB21024I 该命令为异步的,可能不会立即生效。


E:\Program Files\IBM\SQLLIB\BIN>;db2 connect to sample    #此时需要做一次离线的全备。否则是backup pending状态的。
SQL1116N 由于 BACKUP PENDING,不能执行连接或激活数据库 "SAMPLE"。
SQLSTATE=57019

E:\Program Files\IBM\SQLLIB\BIN>;db2 backup database sample to e:\db2\backup
备份成功。此备份映象的时间戳记是:20030507201421

E:\Program Files\IBM\SQLLIB\BIN>;db2 connect to sample   #此时可以连接

  数据库连接信息

数据库服务器     = DB2/NT 8.1.0
SQL 授权标识    = ADMINIST...
本地数据库别名    = SAMPLE


E:\Program Files\IBM\SQLLIB\BIN>;db2 list applications

授权标识 应用程序名  应用程序  应用程序标识        DB   代理进程

            句柄                  名称  序列号
-------- -------------- ---------- ------------------------------ -------- -----

ADMINIST>;db2bp.exe   62     *LOCAL.DB2.008C87122531    SAMPLE  1

E:\Program Files\IBM\SQLLIB\BIN>;db2 backup database sample online to e:\db2\back #在线的备份成功
Online 备份成功。此备份映象的时间戳记是:20030507202717


3.修改参数,使数据库能够做到增量备份。必须要修改trackmod为 on 状态,并有一次完全备份。

E:\Program Files\IBM\SQLLIB\BIN>;db2 update db cfg for sample using trackmod yes #修改参数
DB20000I UPDATE DATABASE CONFIGURATION 命令成功完成。

E:\Program Files\IBM\SQLLIB\BIN>;db2 force application all
DB20000I FORCE APPLICATION 命令成功完成。
DB21024I 该命令为异步的,可能不会立即生效。

E:\Program Files\IBM\SQLLIB\BIN>;db2 backup database sample to e:\db2\backup

备份成功。此备份映象的时间戳记是:20030507203403

E:\Program Files\IBM\SQLLIB\BIN>;db2 backup database sample online incremental de
lta to e:\db2\backonline   #在线的差分备份,也可以用增量备份

备份成功。此备份映象的时间戳记是:20030507213106


E:\Program Files\IBM\SQLLIB\BIN>;db2 connect to sample

  数据库连接信息

数据库服务器     = DB2/NT 8.1.0
SQL 授权标识    = ADMINIST...
本地数据库别名    = SAMPLE


E:\Program Files\IBM\SQLLIB\BIN>;db2 get db cfg #再次查看当前的数据库状态

    数据库 的数据库配置

数据库配置发行版级别          = 0x0a00
数据库发行版级别                 = 0x0a00

数据库领域                   = CN
数据库代码页                   = 1386
数据库代码集                    = GBK
数据库国家/地区代码              = 86

动态 SQL 查询管理      (DYN_QUERY_MGMT) = DISABLE

对此数据库的 Discovery 支持    (DISCOVER_DB) = ENABLE

缺省查询优化类     (DFT_QUERYOPT) = 5
并行度           (DFT_DEGREE) = 1
在算术异常时继续  (DFT_SQLMATHWARN) = NO
缺省刷新有效期          (DFT_REFRESH_AGE) = 0
保留的高频值的数目   (NUM_FREQVALUES) = 10
保留的分位点数目      (NUM_QUANTILES) = 20

备份暂挂                     = NO

数据库是一致的                 = YES
前滚暂挂                   = NO
复原暂挂                     = NO

启用的多页文件分配           = NO

恢复状态的日志保留             = RECOVERY
记录状态的用户出口              = YES

Data Links 标记失效时间间隔(秒)   (DL_EXPINT) = 60
Data Links 写标记初始时间间隔 (DL_WT_IEXPINT) = 60
副本的 Data Links 数目       (DL_NUM_COPIES) = 1
删除后的 Data Links 时间(天数)    (DL_TIME_DROP) = 1
大写的 Data Links 标记        (DL_UPPER) = NO
Data Links 标记算法              (DL_TOKEN) = MAC0

数据库堆(4KB)              (DBHEAP) = 300
数据库共享内存大小(4KB) (DATABASE_MEMORY) = AUTOMATIC
目录高速缓存大小(4KB)       (CATALOGCACHE_SZ) = (MAXAPPLS*4)
日志缓冲区大小(4KB)            (LOGBUFSZ) = 8
实用程序堆大小(4KB)        (UTIL_HEAP_SZ) = 5000
缓冲池大小(页)           (BUFFPAGE) = 250
扩充存储段大小(4KB)  (ESTORE_SEG_SZ) = 16000
扩充存储段的数目  (NUM_ESTORE_SEGS) = 0
锁定列表的最大存储量(4KB)       (LOCKLIST) = 25

应用程序组内存集的最大大小(4KB)(APPGROUP_MEM_SZ) = 10000
应用程序组堆的内存百分比 (GROUPHEAP_RATIO) = 70
最大应用程序控制堆大小(4KB)   (APP_CTL_HEAP_SZ) = 64

共享排序的排序堆域值(4KB) (SHEAPTHRES_SHR) = (SHEAPTHRES)
排序列表堆(4KB)             (SORTHEAP) = 256
SQL 语句堆(4KB)           (STMTHEAP) = 2048
缺省应用程序堆(4KB)       (APPLHEAPSZ) = 256
程序包高速缓存大小(4KB)          (PCKCACHESZ) = (MAXAPPLS*
统计信息堆大小(4KB)        (STAT_HEAP_SZ) = 4384

检查死锁的时间间隔(ms)     (DLCHKTIME) = 10000
每个应用程序的锁定百分比列表    (MAXLOCKS) = 22
锁定超时(秒)            (LOCKTIMEOUT) = -1

更改的页阈值        (CHNGPGS_THRESH) = 60
异步页清除程序的数目  (NUM_IOCLEANERS) = 1
I/O 服务器的数目          (NUM_IOSERVERS) = 3
索引排序标志               (INDEXSORT) = YES
顺序检测标志           (SEQDETECT) = YES
缺省预取大小(页)     (DFT_PREFETCH_SZ) = 16

跟踪修改的页数             (TRACKMOD) = ON

容器的缺省数目              = 1
缺省表空间数据块大小(页)  (DFT_EXTENT_SZ) = 32

活动应用程序的最大数目      (MAXAPPLS) = AUTOMATIC
活动应用程序的平均数目    (AVG_APPLS) = 1
每个应用程序的最大打开 DB 文件数      (MAXFILOP) = 64

日志文件大小(4KB)             (LOGFILSIZ) = 250
主日志文件的数目        (LOGPRIMARY) = 3
辅助日志文件的数目        (LOGSECOND) = 2
已更改的至日志文件的路径          (NEWLOGPATH) =
日志文件路径           = E:\DB2\NODE0000\SQL00001\SQLOGDIR\
溢出日志路径           (OVERFLOWLOGPATH) =
镜像日志路径             (MIRRORLOGPATH) =
第一活动日志文件                    = S0000002.LOG
磁盘上已满的块日志        (BLK_LOG_DSK_FUL) = NO
事务使用的最大活动日志空间的百分比(MAX_LOG) = 0
1 个活动 UOW 的活动日志文件的数目 (NUM_LOG_SPAN) = 0

组落实计数             (MINCOMMIT) = 1
软检查点前回收的日志文件的百分比 (SOFTMAX) = 100
启用的恢复的日志保留       (LOGRETAIN) = RECOVERY
启用的记录的用户出口        (USEREXIT) = ON

启用的自动重新启动           (AUTORESTART) = ON
索引重新创建时间            (INDEXREC) = SYSTEM (ACCESS)
loadrec 会话的缺省数目  (DFT_LOADREC_SES) = 1
要保留的数据库备份的数目  (NUM_DB_BACKUPS) = 12
恢复历史记录保留(天数)   (REC_HIS_RETENTN) = 366

TSM 管理类          (TSM_MGMTCLASS) =
TSM 节点名              (TSM_NODENAME) =
TSM 所有者                  (TSM_OWNER) =
TSM 密码               (TSM_PASSWORD) =


4.恢复完全备份。

E:\Program Files\IBM\SQLLIB\BIN>;db2 list history backup all for sample #查看备份历史记录

          列示 sample 的历史文件

匹配的文件条目数 = 6


Op 对象 时间戳记+序列   类型 设备 最早日志  当前日志   备份标识
-- --- ------------------ ---- --- ------------ ------------ --------------
B D 20030507173349001  F  D S0000000.LOG S0000000.LOG
----------------------------------------------------------------------------
包含 2 表空间:

00001 SYSCATSPACE
00002 USERSPACE1
----------------------------------------------------------------------------
  注释:DB2 BACKUP SAMPLE OFFLINE
开始时间:20030507173349
  结束时间:20030507173410
----------------------------------------------------------------------------
00001 位置:e:\db2\backup\SAMPLE.0\DB2\NODE0000\CATN0000\20030507


Op 对象 时间戳记+序列   类型 设备 最早日志  当前日志   备份标识
-- --- ------------------ ---- --- ------------ ------------ --------------
B D 20030507201421001  F  D S0000000.LOG S0000000.LOG
----------------------------------------------------------------------------
包含 2 表空间:

00001 SYSCATSPACE
00002 USERSPACE1
----------------------------------------------------------------------------
  注释:DB2 BACKUP SAMPLE OFFLINE
开始时间:20030507201421
  结束时间:20030507201445
----------------------------------------------------------------------------
00002 位置:e:\db2\backup\SAMPLE.0\DB2\NODE0000\CATN0000\20030507


Op 对象 时间戳记+序列   类型 设备 最早日志  当前日志   备份标识
-- --- ------------------ ---- --- ------------ ------------ --------------
B D 20030507202155001  N  D S0000000.LOG S0000001.LOG
----------------------------------------------------------------------------
包含 2 表空间:

00001 SYSCATSPACE
00002 USERSPACE1
----------------------------------------------------------------------------
  注释:DB2 BACKUP SAMPLE ONLINE
开始时间:20030507202155
  结束时间:20030507202216
----------------------------------------------------------------------------
00003 位置:E:\DB2\backonline\SAMPLE.0\DB2\NODE0000\CATN0000\20030507


Op 对象 时间戳记+序列   类型 设备 最早日志  当前日志   备份标识
-- --- ------------------ ---- --- ------------ ------------ --------------
B D 20030507202717001  N  D S0000001.LOG S0000002.LOG
----------------------------------------------------------------------------
包含 2 表空间:

00001 SYSCATSPACE
00002 USERSPACE1
----------------------------------------------------------------------------
  注释:DB2 BACKUP SAMPLE ONLINE
开始时间:20030507202717
  结束时间:20030507202737
----------------------------------------------------------------------------
00004 位置:e:\db2\backonline\SAMPLE.0\DB2\NODE0000\CATN0000\20030507


Op 对象 时间戳记+序列   类型 设备 最早日志  当前日志   备份标识
-- --- ------------------ ---- --- ------------ ------------ --------------
B D 20030507203403001  F  D S0000002.LOG S0000002.LOG
----------------------------------------------------------------------------
包含 2 表空间:

00001 SYSCATSPACE
00002 USERSPACE1
----------------------------------------------------------------------------
  注释:DB2 BACKUP SAMPLE OFFLINE
开始时间:20030507203403
  结束时间:20030507203423
----------------------------------------------------------------------------
00005 位置:e:\db2\backup\SAMPLE.0\DB2\NODE0000\CATN0000\20030507


Op 对象 时间戳记+序列   类型 设备 最早日志  当前日志   备份标识
-- --- ------------------ ---- --- ------------ ------------ --------------
B D 20030507203527001  N  D S0000002.LOG S0000003.LOG
----------------------------------------------------------------------------
包含 2 表空间:

00001 SYSCATSPACE
00002 USERSPACE1
----------------------------------------------------------------------------
  注释:DB2 BACKUP SAMPLE ONLINE
开始时间:20030507203527
  结束时间:20030507203548
----------------------------------------------------------------------------
00006 位置:e:\db2\backonline\SAMPLE.0\DB2\NODE0000\CATN0000\20030507


E:\Program Files\IBM\SQLLIB\BIN>;db2 restore database sample from e:\db2\backonli
ne taken at 20030507203527  #恢复某个时间点的数据。
SQL2539W 警告!正在复原至与备份映象数据库相同的现有数据库。数据库文件将被删除。想要继续吗?(y/n) y
DB20000I RESTORE DATABASE 命令成功完成。


E:\Program Files\IBM\SQLLIB\BIN>;db2 rollforward database sample to end of logs and stop #回滚到日志结束

5.恢复增量备份数据。

E:\Program Files\IBM\SQLLIB\BIN>;db2 connect to sample

  数据库连接信息

数据库服务器     = DB2/NT 8.1.0
SQL 授权标识    = ADMINIST...
本地数据库别名    = SAMPLE


E:\Program Files\IBM\SQLLIB\BIN>;db2 list applications

授权标识 应用程序名  应用程序  应用程序标识        DB   代理进程

            句柄                  名称  序列号
-------- -------------- ---------- ------------------------------ -------- -----

ADMINIST>;db2bp.exe   17     *LOCAL.DB2.00D588005249    SAMPLE  1



E:\Program Files\IBM\SQLLIB\BIN>;db2 force application all
DB20000I FORCE APPLICATION 命令成功完成。
DB21024I 该命令为异步的,可能不会立即生效。


E:\Program Files\IBM\SQLLIB\BIN>;db2 restore database sample incremental automatic from e:\db2\backonline taken at 20030507213106  #恢复增量备份。
SQL2539W 警告!正在复原至与备份映象数据库相同的现有数据库。数据库文件将被删除。
想要继续吗?(y/n) y
DB20000I RESTORE DATABASE 命令成功完成。

E:\Program Files\IBM\SQLLIB\BIN>;

E:\Program Files\IBM\SQLLIB\BIN>;db2 rollforward database sample to end of logs and stop #回滚到日志结束。
阅读(535) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~