DB2异库(异机)重定向恢复步骤

创建实例

# cd /opt/IBM/db2/v9.7/instance

# ./db2icrt -p 50004 -u db2inst4 db2inst4

 


建库

$ db2 create db payment on /home/db2inst4 using codeset GBK territory CN

 

检查备份文件

$ db2ckbkp -h PAYMENT.0.db2inst2.NODE0000.CATN0000.20130913013001.001

Backup Mode                  -- 1    #表示是在线备份文件 

Includes Logs                  -- 1    #表示备份文件中包含恢复所需要的归档日志

生成迁移脚本

$ db2 "restore db payment from . taken at  20130913013001 on /home/db2inst4 into payment logtarget /home/db2inst4 redirect generate script pay2.clp"

        ----logtarget /home/db2inst4 字段,表示指定生成新库rollforward所需的日志路径

 

修改脚本

$ vi pay.clp        ----编辑

根据实际情况修改下面内容(新数据库的存储路径):

下面参数中的数值和上面“生成迁移脚本”语句中的参数值意义对应

 

 

修改容器路径(表空间)

 

根据pay.clp中修改的实际情况,创建对应的表空间:

 

创建表空间

$ db2 "SELECT BPNAME,NPAGES,PAGESIZE FROM SYSCAT.BUFFERPOOLS"                                 ----查看缓冲池

$ cat pool.sql    ----写一个脚本,创建表空间

#!/bin/sh

db2 connect to payment

db2 create bufferpool PAYM_SYS_POOL_4K size 25000 pagesize 4k

db2 create bufferpool PAYM_SYS_POOL_8K size 25000 pagesize 8k

db2 create bufferpool PAYM_SYS_POOL_32K size 25000 pagesize 32k

 

db2 "create tablespace EPS_SPACE_8K PAGESIZE 8K MANAGED BY DATABASE USING (file '/home/db2inst4/db2inst4/tablespaces/EPS_SPACE_8K' 100M) AUTORESIZE YES BUFFERPOOL PAYM_SYS_POOL_8K" 

 

db2 "create user temporary tablespace EPS_SPACE_32K PAGESIZE 32K MANAGED BY SYSTEM USING ('/home/db2inst4/db2inst4/tablespaces/EPS_SPACE_32K' ) BUFFERPOOL PAYM_SYS_POOL_32K "

 

db2 "create user temporary tablespace SYSTOOLSTMPSPACE PAGESIZE 4K MANAGED BY SYSTEM USING ('/home/db2inst4/db2inst4/tablespaces/SYSTOOLSTMPSPACE' )  BUFFERPOOL PAYM_SYS_POOL_4K "  

 

db2 "create system temporary tablespace PAYMENT_TMP PAGESIZE 32K MANAGED BY DATABASE USING (file '/home/db2inst4/db2inst4/tablespaces/PAYMENT_TMP' 100M)  BUFFERPOOL PAYM_SYS_POOL_32K "

 

 

创建的表空间和pay.clp中关于表空间的内容应该一一对应。


运行恢复脚本

$ chmod +x pay.clp

$ db2 -tvf pay.clp

 

 

rollforward 数据库

$ db2 "rollforward database payment to end of logs and stop overflow log path ("/home/db2inst4") "

 

 

检查数据库

$ db2 connect to payment      ----连接数据库

$ db2 list tables for schema db2inst2     ----列出表

$ db2 get db cfg for payment

更新归档日志路径

$ mkdir payment_archive_log               ----创建爱你归档日志文件夹

$ db2 update db cfg for payment using LOGARCHMETH1 DISK:/home/db2inst4/payment_archive_log      ----更新归档日志路径    

$ db2 connect reset      ----断开所有连接

 

手工切换归档日志

$ db2 force applications all  

$ db2 terminate

$ db2 archive log for database payment


 

http://blog.csdn.net/a3470194/article/details/17507977
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值