2. データベース - IBM DB2 - トラブルシュート - トランザクションログがいっぱいです

 
2.1 概要
2.2 一時的な対応

2.1 概要

 複数のレコードをまとめて UPDATE しようとするときなど・・・。

SQL0964C  データベースのトランザクション・ログがいっぱいです。
 というエラーになることがあります。  詳細は「トランザクション・ログがフル (SQL0964C) になったときの対応」をご参照ください。

2.2 一時的な対応

 結局、トランザクションでとっておく領域が足りないってことですから、対処としては、トランザクションをかける単位を見直すか、ログの領域を増やすしかないわけですが・・・。  とにかくデータベースの更新を行うのを急ぐ場合は、一時的にでもログの領域を増やしましょう。  データベースサーバの管理者でログインして、DB2 のコマンドプロンプトを管理者権限で開きます。

db2 CONNECT TO データベース名
db2 GET DB CFG FOR データベース名
 で現在の値を確認しておきます。

ログ・ファイルのサイズ (4KB) (LOGFILSIZ) =
 と書いてあるのがログファイルサイズです。  変更するには、下記のコマンドを使用します。

db2 UPDATE DB CFG FOR データベース名 USING LOGFILSIZ サイズ
 変更したら、データベースを再起動します。

db2 DISCONNECT データベース名
db2stop
db2start