免费注册 查看新帖 |

Chinaunix

  平台 论坛 博客 文库
最近访问板块 发新帖
楼主: 2easy4me
打印 上一主题 下一主题

急!如何恢复数据库,大虾指教 [复制链接]

论坛徽章:
0
11 [报告]
发表于 2007-06-20 18:20 |只看该作者
1。tbs1、tbs2、tbs3是什么意思?自己定义的?
对,是自己定义的。在这里例子里面,表空间都是SMS,所以重定向的时候是path,tbs1也是一个目录
2。还有我用的是SUSE LINUX 9操作系统,上边的方法适合吗?
适用,DB2 is DB2, no matter what platform。
3。set命令的是不是都作呀,
对,对每个表空间都做,要区分path,file和disk。

论坛徽章:
0
12 [报告]
发表于 2007-06-21 08:30 |只看该作者
db2 "restore db cisfedb from /db2_backup taken at 20070617020002 redirect"
db2 "set tablespace containers for 0 using (path '/db2_backup/tbs1')"
db2 "set tablespace containers for 1 using (disk '/db2_backup/tbs2')"
db2 "set tablespace containers for 2 using (disk '/db2_backup/tbs3')"
db2 "set tablespace containers for 3 using (disk '/db2_backup/tbs4')"
db2 "set tablespace containers for 4 using (file '/db2_backup/tbs5')"
db2 "set tablespace containers for 5 using (file '/db2_backup/tbs6')"
db2 "set tablespace containers for 6 using (path '/db2_backup/tbs7')"
db2 "set tablespace containers for 7 using (disk '/db2_backup/tbs8')"
db2 "set tablespace containers for 8 using (disk '/db2_backup/tbs9')"
db2 "set tablespace containers for 9 using (path '/db2_backup/tbs10')"
db2 "restore db cisfedb continue"
第一种方法就是在备份路径下自己mkdir 10个目录,然后重定向

db2 "restore db cisfedb from /db2_backup taken at 20070617020002 redirect"
db2 "set tablespace containers for 0 using (path '/db2_db/db2inst1/NODE0000/SQL00001/SQLT0000.0')"
db2 "set tablespace containers for 1 using (disk '/dev/mapper/data_vg-db2_jf_dta01')"
db2 "set tablespace containers for 2 using (disk '/dev/mapper/data_vg-db2_dta01')"
db2 "set tablespace containers for 3 using (disk '/dev/mapper/data_vg-db2_idx01)"
db2 "set tablespace containers for 4 using (file '/db2_large/tbs_lob1.dat')"
db2 "set tablespace containers for 5 using (file '/db2_large/tbs_lob2.dat')"
db2 "set tablespace containers for 6 using (path '/db2_db/db2inst1/NODE0000/SQL00001/./db2_systmp')"
db2 "set tablespace containers for 7 using (disk '/dev/mapper/data_vg-db2_jf_idx01')"
db2 "set tablespace containers for 8 using (disk '/dev/mapper/data_vg-db2_dta02')"
db2 "set tablespace containers for 9 using (path '/db2_db/db2inst1/NODE0000/SQL00001/SYSTOOLSPACE')"
db2 "restore db cisfedb continue"
第二种方法是通过list tablespace containers for 0\1\2 命令得到的路径
还有file   disk的用法对吗?
现在拿不准不敢瞎做!

论坛徽章:
0
13 [报告]
发表于 2007-06-21 09:44 |只看该作者
第二种方法中的
db2 "set tablespace containers for 3 using (disk '/dev/mapper/data_vg-db2_idx01)"
db2 "set tablespace containers for 4 using (file '/db2_large/tbs_lob1.dat')"
路径后边还应该加上number of pages
这个number of pages是不是使用命令list tablespaces show detail
显示出来的信息中“total pages”项呀

论坛徽章:
0
14 [报告]
发表于 2007-06-21 09:50 |只看该作者
第二种方法可以。
1。对于disk和file,要指定大小的,只有path是例外。比如
using (disk '/dev/mapper/data_vg-db2_jf_dta01' 20000)
2。file和disk的名字可以不必和源数据库相同,只要对应一样的类型即可。特别对于disk,在目标机器上要存在并能被实例用户使用。比如
源机器上是/dev/mapper/data_vg-db2_jf_dta01
目标机器可以是/dev/mapper/jf_dta01(名字可以不同,但/dev/mapper/jf_dta01在目标机器上要有,实例用户有权限用)

对于命令的具体使用,可以参考
http://publib.boulder.ibm.com/infocenter/db2luw/v8//index.jsp

建议你现在自己的机器上把整个过程做一遍。

[ 本帖最后由 huyuhui001 于 2007-6-21 09:52 编辑 ]

论坛徽章:
0
15 [报告]
发表于 2007-06-21 10:34 |只看该作者
db2 "restore db cisfedb from /db2_backup taken at 20070617020002 redirect"
db2 "set tablespace containers for 0 using (path '/db2_db/db2inst1/NODE0000/SQL00001/SQLT0000.0')"
db2 "set tablespace containers for 1 using (device '/dev/mapper/data_vg-db2_jf_dta01' 128000)"
db2 "set tablespace containers for 2 using (device '/dev/mapper/data_vg-db2_dta01' 256000)"
db2 "set tablespace containers for 3 using (device '/dev/mapper/data_vg-db2_idx01' 12800)"
db2 "set tablespace containers for 4 using (file '/db2_large/tbs_lob1.dat' 192000)"
db2 "set tablespace containers for 5 using (file '/db2_large/tbs_lob2.dat' 192000)"
db2 "set tablespace containers for 6 using (path '/db2_db/db2inst1/NODE0000/SQL00001/./db2_systmp')"
db2 "set tablespace containers for 7 using (device '/dev/mapper/data_vg-db2_jf_idx01' 64000)"
db2 "set tablespace containers for 8 using (device '/dev/mapper/data_vg-db2_dta02' 12800)"
db2 "set tablespace containers for 9 using (path '/db2_db/db2inst1/NODE0000/SQL00001/SYSTOOLSPACE')"
db2 "restore db cisfedb continue"
我按照上边的步骤作了,但是提示以下错误
SQL1117N  A connection to or activation of database "CISFEDB" cannot be made
because of ROLL-FORWARD PENDING.  SQLSTATE=57019

论坛徽章:
0
16 [报告]
发表于 2007-06-21 10:37 |只看该作者
是不是少做什么了,能不能帮我整理完整!谢谢了,总算restore successfully!

论坛徽章:
0
17 [报告]
发表于 2007-06-21 10:40 |只看该作者
刚才没有说清楚,是restore完成后我connect to cisfedb然后抱错
SQL1117N  A connection to or activation of database "CISFEDB" cannot be made
because of ROLL-FORWARD PENDING.  SQLSTATE=57019

论坛徽章:
0
18 [报告]
发表于 2007-06-21 11:23 |只看该作者
你的数据库是归档模式的,把源数据库log拷贝到目标数据库,然后做一下这个
db2 rollforward database CISFEDB to end of logs using local time and complete

论坛徽章:
0
19 [报告]
发表于 2007-06-21 17:30 |只看该作者
我快崩溃了,备机上有个20070618164606的备份,我用这个备份重新作了redirect
db2 "set tablespace containers for 6 using (path '/db2_db/db2inst1/NODE0000/SQL00001/./db2_systmp')"
db2 "set tablespace containers for 7 using (device '/dev/mapper/data_vg-db2_jf_idx01' 64000)"
做这两步的时候又出来个新的错误
SQL0298N  Bad container path.  SQLSTATE=428B2
我最后又执行db2 rollforward database CISFEDB to end of logs using local time and complete
也提示错误:SQL0104N  An unexpected token "using" was found following "LOGS".  Expected
tokens may include:  "END-OF-STATEMENT".  SQLSTATE=42601
心情沮丧到极点了!

论坛徽章:
0
20 [报告]
发表于 2007-06-23 08:31 |只看该作者
1.
db2 "set tablespace containers for 6 using (path '/db2_db/db2inst1/NODE0000/SQL00001/./db2_systmp')"
db2 "set tablespace containers for 7 using (device '/dev/mapper/data_vg-db2_jf_idx01' 64000)"
做这两步的时候又出来个新的错误
SQL0298N  Bad container path.  SQLSTATE=428B2

你要检查6,7和原来的对应关系是不是一样,比如都是用的SMS或者DEVICE。
对于6,”/./db2_systmp“这里面有个”点“吗?
对于7,device在目标机器上正确么?
对于7,每次失败重做的时候,要先untag一下

2。db2 ”rollforward database CISFEDB to end of logs and complete “

[ 本帖最后由 huyuhui001 于 2007-6-23 08:33 编辑 ]
您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

  

北京盛拓优讯信息技术有限公司. 版权所有 京ICP备16024965号-6 北京市公安局海淀分局网监中心备案编号:11010802020122 niuxiaotong@pcpop.com 17352615567
未成年举报专区
中国互联网协会会员  联系我们:huangweiwei@itpub.net
感谢所有关心和支持过ChinaUnix的朋友们 转载本站内容请注明原作者名及出处

清除 Cookies - ChinaUnix - Archiver - WAP - TOP