欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页

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

程序员文章站 2024-01-09 09:59:28
...

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

上一篇:

下一篇: