對於DB2“SQL2421N 不允許表空間級備份,因爲未啓用前滾恢復。”解決方法

在對DB2中表空間的備份時候,當報錯“SQL2421N  不允許表空間級備份,因爲未啓用前滾恢復”,原因及解決方法如下:

------------------------------ 輸入的命令 ------------------------------

backup database STUDENT

       tablespace(syscatspace,userspace1)

       online to

       f:/ibmsoft_backup;

------------------------------------------------------------------------------

backup database STUDENT tablespace(syscatspace,userspace1) online to f:/ibmsoft_backup

SQL2421N  不允許表空間級備份,因爲未啓用前滾恢復。

 

SQL2421N  不允許表空間級備份,因爲未啓用前滾恢復。

 

出現錯誤的場景如上

出錯是因爲當前數據庫是循環日誌

使用命令

------------------------------ 輸入的命令 ------------------------------

Db2 connect to student

db2 get db cfg

------------------------------------------------------------------------------

 

結果顯示:

------------------------------------------------------------------------------

  DISK:將歸檔日誌存放到磁盤上

  TSM:將歸檔日誌存放到TSM服務器

 BAR APIs:第三方廠商提供的產品

  DB2在版本8.2中增加了如下配置參數

:

  第一個日誌歸檔方法 (LOGARCHMETH1) = OFF

  logarchmeth1 的選項 (LOGARCHOPT1) =

  第二個日誌歸檔方法 (LOGARCHMETH2) = OFF

  logarchmeth2 的選項 (LOGARCHOPT2) =

  故障轉移日誌歸檔路徑 (FAILARCHPATH) =

  錯誤時重試日誌歸檔次數 (NUMARCHRETRY) = 5

  日誌歸檔重試延遲() (ARCHRETRYDELAY) = 20

  供應商選項 (VENDOROPT) =

------------------------------------------------------------------------------

 

OFF 指定不使用日誌歸檔方法。如果 logarchmeth1 logarchmeth2 都設置爲 OFF,則認爲數據庫正在使用循環日誌記錄,且不可前滾恢復。這是缺省值。

 

由此可以看出數據庫是循環日誌,必須先把數據庫修改成歸檔日誌

------------------------------ 輸入的命令 ------------------------------

Db2 update db cfg for student using LOGARCHMETH1 logretain

Db2 update db cfg for student using userexit on

------------------------------------------------------------------------------

執行完後,再運行命令

------------------------------ 輸入的命令 ------------------------------

Db2 connect to student

db2 get db cfg

------------------------------------------------------------------------------

結果顯示:

------------------------------------------------------------------------------

  DISK:將歸檔日誌存放到磁盤上

  TSM:將歸檔日誌存放到TSM服務器

 BAR APIs:第三方廠商提供的產品

  DB2在版本8.2中增加了如下配置參數

:

  第一個日誌歸檔方法 (LOGARCHMETH1) = LOGRETAIN

  logarchmeth1 的選項 (LOGARCHOPT1) =

  第二個日誌歸檔方法 (LOGARCHMETH2) = OFF

  logarchmeth2 的選項 (LOGARCHOPT2) =

  故障轉移日誌歸檔路徑 (FAILARCHPATH) =

  錯誤時重試日誌歸檔次數 (NUMARCHRETRY) = 5

  日誌歸檔重試延遲() (ARCHRETRYDELAY) = 20

  供應商選項 (VENDOROPT) =

------------------------------------------------------------------------------

      

然後再對數據庫進行完全脫機備份

------------------------------ 輸入的命令 ------------------------------

Backup database student

Offline to

F:/ibmsoft_backup

------------------------------------------------------------------------------

 

上面兩步做完之後再

------------------------------ 輸入的命令 ------------------------------

backup database STUDENT

       tablespace(syscatspace,userspace1)

       online to

       f:/ibmsoft_backup;

------------------------------------------------------------------------------

就會命令成功。

 

注:其中命令都是在cmd>db2cmd下運行的

       Ibmasoft_backup必須是f盤下存在的文件夾

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章