重置DB2表空间静默状态失败的例子

在重置DB2表空间静默状态时,有时会出现错误信息,下文就为您列举了一个重置DB2表空间静默状态失败的例子,供您参考研究。

10年积累的成都网站建设、做网站经验,可以快速应对客户对网站的新想法和需求。提供各种问题对应的解决方案。让选择我们的客户得到更好、更有力的网络服务。我虽然不认识你,你也不认识我。但先网站策划后付款的网站建设流程,更有南阳免费网站建设让你可以放心的选择与我们合作。

一种经常遇到的失败的重置操作:

由于静默操作导致的锁定的存在,对这样的DB2表空间进行某些操作时,可能会遇到 SQL3805N 或 SQL0290N 等报错信息,提示表空间不可访问。例如以位于 DB2INST1.USERSPAC1 表空间的 DB2INST1.STAFF 表为例:

a) 静默表空间为意向更新状态:

db2 quiesce tablespaces for table db2inst1.staff intent to update

b) 尝试删除表的操作将失败:

db2 delete from db2inst1.staff
DB21034E The command was processed as an SQL statement because it was not a
valid Command Line Processor command. During SQL processing it returned:
SQL0290N Table space access is not allowed. SQLSTATE=55039

此时若使用:

db2 list tablespaces

命令检查DB2表空间状态,可以发现表空间 USERSPACE1 处于 INTENT TO UPDATE 的静默状态:

......
Tablespace ID = 2
Name = USERSPACE1
Type = System managed space
Contents = Any data
State = 0x0002
Detailed explanation:
Quiesced: UPDATE
......

如果要除去这一静默状态,可使用静默命令中的“RESET”选项,使DB2表空间恢复到正常状态(0x0000),从而实现对表空间中表的正常访问。

此时,若尝试使用任何一个 DB2 用户,执行如下命令,进行除去该多DB2表空间的静默状态的尝试:

db2 quiesce tablespaces for table db2inst1.staff reset
DB20000I The QUIESCE TABLESPACES command completed successfully.

可以看到命令已成功完成,但当再次尝试上述的 DELETE 操作时,却仍然遇到同样的 SQL0290N 的报错,即不允许存取表空间。查询表空间状态表明它仍处于原来的意向更新的静默状态。为什么上述重置静默状态的命令已成功完成,却没有真正除去表空间的静默状态呢?

网站标题:重置DB2表空间静默状态失败的例子
标题来源:http://www.shufengxianlan.com/qtweb/news36/49836.html

网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联