DB2表空间重定向恢复数据库实战
DB2的备份恢复有点坑,当源系统和目标系统的路径设置不同时,要手动进行重定向恢复,本文是我一次实战操作之后总结的过程,仅供参考。
一、发出重定向恢复命令
DB2 RESTORE DB OLDDB FROM "C:\OLDDBbak" TAKEN AT 20150717164847 TO "C:" INTO NEWDB REDIRECT
其中,OLDDB是旧数据库、备份的数据库名称,NEWDB是新数据库名称,不用事先创建也可以,C:\OLDDBbak是备份文件放置的目录,20150717164847是
备份文件的时间戳,具体可看备份文件的名字OLDDB.0.DB2.NODE0000.CATN0000.20150717164847.001,TO "C:"是新数据库的路径,REDIRECT是进行重定向恢复。
二、重定向表空间
2.1列出表空间
DB2 LIST TABLESPACES
可以看到当前数据库的表空间状况
表空间标识 = 2
名称 = SYSTOOLSTMPSPACE
类型 = 系统管理空间
内容 = 用户临时数据
状态 = 0x2000100
详细解释:
复原暂挂
可以定义存储器 表空间标识 = 3
名称 = TBS_01
类型 = 数据库管理空间
内容 = 所有持久数据。大型表空间。
状态 = 0x2001100
详细解释:
复原暂挂
必须定义存储器
可以定义存储器
可以看到表空间3是“必须定义存储器”状态,这就要进行重定向了。
2.2查看要进行重定向的表空间详细信息
DB2 LIST TABLESPACE CONTAINERS FOR 3 SHOW DETAIL
结果如下
表空间 3 的表空间容器 容器标识 = 0
名称 = E:\OLDDB\TBS\CONTAINER_01_01
类型 = 文件
总计页数 = 25600
可用页数 = 25568
可访问 = 否
容器标识 = 1
名称 = E:\OLDDB\TBS\CONTAINER_01_02
类型 = 文件
总计页数 = 25600
可用页数 = 25568
可访问 = 否
可以看到,这个表空间的路径在目标系统是不可访问的,要进行重定向。
2.3进行重定向
这个表空间有两个容器,可以分别重定向
DB2 SET TABLESPACE CONTAINERS FOR 3 USING (FILE "C:\NEWDB\TBS\CONTAINER_01_01" 25600,FILE "C:\NEWDB\TBS\CONTAINER_01_02" 25600)
也可以合并重定向
DB2 SET TABLESPACE CONTAINERS FOR 3 USING (FILE "C:\NEWDB\TBS\CONTAINER_01" 51200)
页大小要大于等于原大小
这是数据库管理空间类型的重定向,如果是系统管理空间类型的,命令如下:
DB2 SET TABLESPACE CONTAINERS FOR 10 USING (PATH "C:\NEWDB\TBS\TBS_SYSTEM_04")
可能有很多个表空间要进行重定向,按实际环境,最后要执行的命令类似如下:
DB2 SET TABLESPACE CONTAINERS FOR 3 USING (FILE "C:\NEWDB\TBS\CONTAINER_01_01" 25600,FILE "C:\NEWDB\TBS\CONTAINER_01_02" 25600)
DB2 SET TABLESPACE CONTAINERS FOR 4 USING (FILE "C:\NEWDB\TBS\CONTAINER_02" 25600)
DB2 SET TABLESPACE CONTAINERS FOR 5 USING (FILE "C:\NEWDB\TBS\CONTAINER_03" 51200)
DB2 SET TABLESPACE CONTAINERS FOR 6 USING (FILE "C:\NEWDB\TBS\CONTAINER_04" 64000)
DB2 SET TABLESPACE CONTAINERS FOR 7 USING (FILE "C:\NEWDB\TBS\CONTAINER_05" 153600)
DB2 SET TABLESPACE CONTAINERS FOR 8 USING (FILE "C:\NEWDB\TBS\CONTAINER_06" 51200)
DB2 SET TABLESPACE CONTAINERS FOR 9 USING (FILE "C:\NEWDB\TBS\CONTAINER_07" 25600)
DB2 SET TABLESPACE CONTAINERS FOR 10 USING (PATH "C:\NEWDB\TBS\TBS_SYSTEM_04")
DB2 SET TABLESPACE CONTAINERS FOR 11 USING (PATH "C:\NEWDB\TBS\TBS_SYSTEM_08")
DB2 SET TABLESPACE CONTAINERS FOR 12 USING (PATH "C:\NEWDB\TBS\TBS_USERTMP_04")
DB2 SET TABLESPACE CONTAINERS FOR 13 USING (PATH "C:\NEWDB\TBS\TBS_USERTMP_08")
最后重新执行2.1步骤检查看还有没“必须定义存储器”的表空间
三、完成重定向恢复
DB2 RESTORE DB OLDDB CONTINUE
DB2表空间重定向恢复数据库实战的更多相关文章
- DB2 表空间和缓冲池
简介 对于刚涉足 DB2 领域的 DBA 或未来的 DBA 而言,新数据库的设计和性能选择可能会很令人困惑.在本文中,我们将讨论 DBA 要做出重要选择的两个方面:表空间和缓冲池.表空间和缓冲池的设计 ...
- db2 表空间扩容
DB2表空间扩容 1 - Detect what tablespace has size issues db2 list tablespaces show detail 2 - Check the p ...
- Oracle误删除表空间的恢复
对于误删除表空间的恢复,本文通过基于数据库的时间点恢复和基于表空间的时间点恢复分别加以讨论 一 通过基于数据库的时间点恢复被误删除的表空间 1 需要注意的事项 a 基于数据库的时间点恢复将会回退整个数 ...
- Oracle误删表空间文件后数据库无法启动
[问题描述]Oracle误删表空间文件后数据库无法启动,报错表空间文件不存在 [解决办法]sqlplus / as sysdba #以dba身份登陆数据库shutdown immediat ...
- DB2 表空间监控
默认DB2 缓冲池信息监控是OFF, 需要开启(DB2表空间是由缓冲池分配的) CollBufferpool : ============ The CollBufferpool collector c ...
- UNDO表空间损坏导致数据库无法OPEN
在数据库undo表空间文件损坏.或者undo表空间文件缺失的情况下.无法打开数据库. 这两种情况都能够视为一种情况处理,解决方法一样. 场景:在23:10的时候新建一个undo表空间undotbs02 ...
- ORACLE表空间offline谈起,表空间备份恢复
从ORACLE表空间offline谈起,表空间备份恢复将表空间置为offline,可能的原因包括维护.备份恢复等目的:表空间处于offline状态,那么Oracle不会允许任何对该表空间中对象的SQL ...
- db2 表空间容器调整
1.查看当前容器的分布,并确定如何调整 db2look -d sample -l -cor -dp -o dd.sql 2.给表空间添加容器 db2 "alter tablespace tb ...
- db2 表空间容量
Db2 connect to xxx Db2 “LIST TABLESPACES SHOW DETAIL” Tablespace ID = 7 Name = TSASNAA Type = Databa ...
随机推荐
- asp.net FileUpload上传文件夹并检测所有子文件
1.在FileUpload控件添加一个属性 webkitdirectory=""就可以上传文件夹了 <asp:FileUpload ID="FileUpload1& ...
- lua_nginx_module用例
content_by_lua server { listen ; server_name lua.luckybing.top; location / { default_type 'text/plai ...
- SOAP介绍,为学习WCF做准备
SOAP 1.什么是SOAP? 答:简单对象访问协议是交换数据的一种协议规范,是一种轻量的.简单的.基于XML的协议, 它被设计成在WEB上交换结构化的和固化的信息.WebService的三要素 SO ...
- 【代码笔记】JTable 、TableModel的使用3
在java中插入Table,并通过TableModel插入表格初始化状态后,如果需要第一行标题栏进行重命名,直接利用TableModel接口去实现列名修改,在图形显示中是无法实现的. 这里需要用到 J ...
- Web前端面试指导(八):iframe有那些缺点
本题的特点 这道题目的特点就是不按照正常的套路来提问,一般都是问优点,这里比较反常问iframe的缺点,很多同学肯定很不习惯这种问答,因为平时只关注有点,这么一问就懵逼了! 本题解答的思路及要点 ① ...
- JS高级程序设计第三版——在HTML中使用JavaScript
使用<script>元素的方式 外部引用式.行内式.嵌入式. JavaScript引用放在<body>后面的原因 假如在文档的<head>元素中包含所有JavaSc ...
- Flask博客类登录注册验证模块代码(十四)
1 文件系统 blog #博客类 App forms #表单 __init__.py user.py models #模型 __init__.py user.py static #静态文件 templ ...
- 动态获取Drawable图片资源
比如Drawable中有一系列连续的图片,img_0.png, img_1.png, img_2.png ... 如果要动态获取这些图片,通过"R.drawable.img_x"的 ...
- Selenium2学习(八)-- 操作元素(键盘和鼠标事件)
前言 在前面的几篇中重点介绍了一些元素的到位方法,到位到元素后,接下来就是需要操作元素了.本篇总结了web页面常用的一些操作元素方法,可以统称为行为事件 有些web界面的选项菜单需要鼠标悬停在某个元素 ...
- FastDFS 初始
FastDFS 详细介绍 FastDFS是一个开源的分布式文件系统,她对文件进行管理,功能包括:文件存储.文件同步.文件访问(文件上传.文件下载)等,解决了大容量存储和负载均衡的问题.特别适合以文件为 ...