db2数据库重定向表空间导入-解决RESTORE 时 报驱动没关错误

本文介绍了DB2数据库备份过程中包含表空间容器物理路径的方法,以及如何通过重定向解决导入时遇到的问题。提供了具体的步骤来修改容器地址并顺利完成数据库恢复。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

db2在数据备份时,会同时把表空间容器物理路径备份出来。(会备份八个表空间文件)
这样在你resotre时,会按照导出时表空间容器的路径,新建表空间文件。
所以在导入时,如果当前系统没有以前对应的磁盘分区。
导入时就会提示你:“终止导入,驱动器门没有关。”

如果当前当前磁盘里已经存在对应的表空间文件夹,而且此表空间被使用,
会“报容器使用中,请使用重定向”


1.两个问题的解决办法相同,在回复时使用重定向命令:

db2 RESTORE DATABASE olddb  FROM "E:\test_bkp" INTO  newdb  redirect without rolling forward。


执行结果
-- SQL1277N  复原已检测到一个或多个表空间容器是不可访问的,或者已将它们的状态设置为“必须定义存储器”。
-- DB20000I  RESTORE DATABASE 命令成功完成。

2.列出当前备份里表空间容器原来的路径

db2 list tablespaces 

结果会看到10个容器路径。 1和10 分别是0k的。不需要重定向。

 

 

3.修改容器地址

其他的容器,按照2,3,4,5,9,8,7,6的顺序,写出如下命令。并且修改成新路径。执行命令。

db2 set tablespace containers for 2 using (path "E:\DB\TRS\NP\BPN8K")
db2 set tablespace containers for 3 using (path "E:\DB\TRS\NP\BPN16K")
db2 set tablespace containers for 4 using (path "E:\DB\TRS\NP\BPN4K")
db2 set tablespace containers for 5 using (path "E:\DB\TRS\NP\BPN32K")

db2 set tablespace containers for 9 using (path "E:\DB\TRS\TEMP\BPN4K")
db2 set tablespace containers for 8 using (path "E:\DB\TRS\TEMP\BPN8K")
db2 set tablespace containers for 7 using (path "E:\DB\TRS\TEMP\BPN16K")
db2 set tablespace containers for 6 using (path "E:\DB\TRS\TEMP\BPN32K")

 

 

 

 4.按设置好的容器路径还原备份库。

db2 RESTORE DATABASE NP55 CONTINUE

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值