執行大量 INSERT/UPDATE 時出現 SQL0964C The transaction log for the database is full,代表交易日誌空間耗盡。
db2 get db cfg | grep LOG
關鍵參數說明:
LOGFILSIZ:單一日誌檔案大小 (4KB 頁數),預設 1024 (即 4MB)。LOGPRIMARY:主要日誌檔案數量,預分配且循環使用。LOGSECOND:次要日誌檔案數量,主要檔用盡時動態分配,用完即釋放。db2 update db cfg using LOGFILSIZ 10240 db2 update db cfg using LOGPRIMARY 100 db2 update db cfg using LOGSECOND 100
db2stop force db2start
db2 get db cfg | grep LOG
db2pd -db <db> -logs 監控日誌使用率。LOAD 指令 (可指定 NONRECOVERABLE 略過日誌) 或分批提交交易。