1. 程式人生 > >DB2表空間狀態異常解決方法

DB2表空間狀態異常解決方法

在用DB2導資料的時候,為了恢復自增主鍵,進行備份和恢復時,因為錯誤使用了nonrecoverable這個關鍵字,導致資料庫表空間異常,說是備份時出現了問題。查了好多資料發現有個帖子不錯,特整理做筆記。
一、問題出現: 在資料庫做了一個load作業,末尾未加引數:nonrecoverable,結果導致目標表所在的表空間變為backup pending狀態(0X0020)
二、解決方法:
1.切換到資料庫例項使用者登入資料庫,查看錶狀態(資料庫例項:cmsdb)

db2 connect to cmsdb
db2 list tablespaces show detail

只要狀態不是0X0000都是非正常的資料

2.檢視資料庫引數

db2 get db cfg for cmsdb|grep USEREXIT
db2 get db cfg for cmsdb|grep LOGRETAIN

3.修改資料庫引數

db2 update db cfg for cmsdbusing userexit on
db2 update db cfg for cmsdbusing logretain on

4.空備異常表空間(異常表空間名:CRM_DATA1)

db2 backup database cmsdb tablespace CRM_DATA1 online to /dev/null

這一步要等幾分鐘的樣子,幾分鐘沒有結束有點怕了,不要怕要再等一下

5.恢復資料庫引數

db2 update db cfg for cmsdb using userexit off
db2 update db cfg for cmsdb using logretain off

6.驗證

db2 list tablespaces show detail

注意:第 2-5步要用資料庫管理員的身份登入db2inst1
原文來自
https://blog.csdn.net/dingguanyi/article/details/77902485