Log-Files

IBM DB2 9.7,無法增加 LOGFILSIZ 或 LOGPRIMARY 值

  • June 2, 2014

我正在使用 IBM DB2 9.7 LUW 數據庫。我目前的循環日誌記錄數據庫配置值如下:

LOGFILSIZ: 1024
LOGPRIMARY: 13
LOGSECONDARY: 15

我收到事務日誌已滿的錯誤,因此我需要增加日誌大小。我嘗試了以下方法:

LOGFILSIZ: 4000
LOGPRIMARY: 10
LOGSECONDARY: 20

我還重新啟動了數據庫。LOGSECONDARY更改為 20,但仍LOGFILSIZ保持在 1024 和LOGPRIMARY13。

我是否為我的問題更改了正確的值,為什麼即使我重新啟動了數據庫,這些值也不會改變?

您正在更改正確的參數,但聽起來好像您實際上並沒有重新啟動數據庫,這可以解釋為什麼LOGSECOND立即生效,但LOGPRIMARY尚未LOGFILSIZ更改。您可以使用命令查看這些配置參數的目前值和延遲(待定)值GET DATABASE CONFIGURATION FOR <yourdb> SHOW DETAIL。我懷疑你會看到 和 的延遲值LOGPRIMARY分別LOGFILSIZ是 10 和 4000。

確保完全回收 DB2 數據庫的最簡單方法是停止並重新啟動整個實例(使用db2stop forcedb2start命令)。之後,您可以選擇使用該ACTIVATE DATABASE語句啟動數據庫。

不過,您不必關閉整個 DB2 實例。要正確地重新啟動 DB2 數據庫,您必須停用它(即,使數據庫解除分配給它的所有記憶體)。您可以通過終止與數據庫的所有連接(使用該FORCE APPLICATION語句)然後(如有必要)發出該DEACTIVATE DATABASE語句來做到這一點。您可以通過發出命令來驗證數據庫是否已完全停止LIST ACTIVE DATABASES- 如果您的數據庫不在返回的列表中,則它已停止。

在此(或)之後與數據庫的任何新連接ACTIVATE DATABASE都將導致 DB2 啟動有問題的數據庫,此時它將使用新參數分配日誌文件。

引用自:https://serverfault.com/questions/591048