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


クラウディア 


1. 概要
2. 調査
3. 一時的な対応

1. 概要

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

SQL0964C  データベースのトランザクション・ログがいっぱいです。
 というエラーになることがあります。  本ページは、下記のサイトを参考にさせていただきました。
トランザクション・ログがフル (SQL0964C) になったときの対応

2. 調査

 状況を調査するには、データベースサーバで、管理者権限でコマンドプロンプト(端末)を開いて、次の2つのコマンドを実行します。

db2 list applications
 これは、他のページにも書いていますが、データベースに誰がどんなプログラムで接続しているかを表示します。

db2pd -db データベース名 -transactions
 これは、未コミットのトランザクションを表示します。  もし、単にトランザクションをかけたまま放置している状態であれば、その時点で、きっちりコミットかロールバックさせれば、現象は解消して、他に対策を行う必要はありません。

3. 一時的な対応

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

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

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

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

db2 DISCONNECT データベース名
db2stop
db2start

audiobook.jp
【usus ウズウズ】
EaseUS
earthcar(アースカー)
ネットオークションの相場、統計、価格比較といえばオークファン
薬屋の独り言
アフィリエイトのアクセストレード
健康サポート特集
ハイスピードプラン
TikTok Shop 【リピート用プログラム】
損保との違い
Amazonギフトカード
葬送のフリーレン Prime Video
5G CONNECT
JETBOY
サウンドハウス
ベルリッツ
U-NEXT
それがだいじWi-Fi