DB2数据库恢复!

自己电脑上DB2崩溃了!现在在其他电脑上重新装了一个DB2,然后找来一个以前备份的数据库文件来恢复,数据库备份文件的名字“NB_DATA.0.DB2.NODE0000.C... 自己电脑上DB2崩溃了!现在在其他电脑上重新装了一个DB2,然后找来一个以前备份的数据库文件来恢复,数据库备份文件的名字“NB_DATA.0.DB2.NODE0000.CATN0000.20110927204957.001”,使用的恢复语句是db2 restore db NB_DATA taken at 20110927204957,完成之后,用select语句查询时显示“不允许访问表空间。 SQL Code: -290, SQL State: 55039”,现在求解决方案,
在网上查了半天说是要恢复表空间,但是好像我这没有备份表空间的文件,哪位大虾帮下帮看看,最好能将DB2怎么备份,要备份那些文件,怎么还原,具体执行语句怎么写。
展开
 我来答
峦默丹之丶的1e
2011-12-27 · TA获得超过680个赞
知道小有建树答主
回答量:123
采纳率:0%
帮助的人:39.8万
展开全部
看一下表空间是不是挂起了,按照如下步骤:
1、db2    list tablespaces   show   detail,可能的输出如下:
表空间标识 = 1
名称 = TEMPSPACE1
类型 = 系统管理空间
内容 = 系统临时数据
状态 = 0x0000
详细解释:
  装入暂挂
 总页数                          = 1652
 可用页数                        = 1652
 已用页数                         = 1652
 空闲页数                         = 不适用
 高水位标记(页)                 = 不适用
 页大小(字节)                   = 4096
 盘区大小(页)                   = 32
 预读取大小(页)                 = 32
 容器数                           = 1
 状态更改表空间标识                    = 2
 状态更改对象标识                      = 59
这样的话,表明id为59的表使表空间挂起了
2、下面的语句查看引起挂起的表名
select tabname,tableid from syscat.tables where tableid=59
3、你这种情况有可能是备份文件里面指定的表空间容器没有创建,所以导致表空间无法恢复,可以用如下命令查看出有问题的表空间的容器,手动创建好,再执行恢复
db2 list tablespace containers for 1 show detail,其中for后面的1表示的是表空间标识,可能输出为:
表空间 1 的表空间容器

容器标识 = 0
名称 = C:\DB2\NODE0000\SQL00001\SQLT0001.0
类型 = 路径
总计页数 = 1
可用页数 = 1
可存取 = 是
则按照这个容器的信息手动创建容器后执行恢复试一下
壹寰(深圳)科技文化有限公司
2021-03-27 广告
要找正规专业的公司,行业口碑也比较重要。如果想了解更多详细信息,可以咨询下壹寰(深圳)科技文化有限公司。91数据恢复是壹寰(深圳)科技文化有限公司旗下专业数据恢复品牌,91数据恢复专注于勒索病毒数据恢复、勒索病毒数据修复、数据库修复、数据库... 点击进入详情页
本回答由壹寰(深圳)科技文化有限公司提供
qfwu
2011-12-29 · TA获得超过581个赞
知道小有建树答主
回答量:481
采纳率:0%
帮助的人:355万
展开全部
数据库下有表空间,为存储数据的逻辑单元,下面指定目录或物理文件、磁盘设备等。这个提示是说你的备份不正确。你的旧数据库既然已经崩溃,估计重做备份不可能。不过还是写出整个步骤吧。

若是备份有问题,则
备份命令是:
CONNECT TO GP;
QUIESCE DATABASE IMMEDIATE FORCE CONNECTIONS;
CONNECT RESET;
BACKUP DATABASE GP TO "C:\" WITH 2 BUFFERS BUFFER 1024 PARALLELISM 1 WITHOUT PROMPTING;
CONNECT TO GP;
UNQUIESCE DATABASE;
CONNECT RESET;
其中QUIESCE DATABASE IMMEDIATE FORCE CONNECTIONS为使数据库静默的命令,就是停止数据库上其他活动来执行完全备份的准备工作。

在C盘上产生了印像文件GP.0.DB2.NODE0000.CATN0000.20111229155222.001

还原命令可以是:
RESTORE DATABASE GP FROM "C:" TAKEN AT 20111229155222 WITH 1 BUFFERS BUFFER 1024 PARALLELISM 1 WITHOUT PROMPTING;

但是如果是新数据库:
RESTORE DATABASE GP FROM "C:" TAKEN AT 20111229155222 INTO T1;
这里的T1是新创建的空数据库。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式