Question & Answer
Question
ユーザーによるメンテナンスが必要な Db2 関連のログ・ファイルを教えてください。
Answer
Db2 が生成するログ・ファイルを以下の 3 つのカテゴリーに分けて説明します。
循環するログの定期的なメンテナンスは不要ですが、ログ・サイズの調整が必要な場合があります。
IBM Docs などの技術文書で、「ログ・ファイル」は多くの場合トランザクション・ログ・ファイルを指します。
本文書ではトランザクション・ログ以外のログも扱うため、「ログ・ファイル」は必ずしもトランザクション・ログでない点に注意してください。
各ファイルのロケーション情報で利用している INSTANCE_DIR、DIAGPATH、DBPATH および DASHOME は以下の表を参照してください。
■ 単調増加する可能性があるログ・ファイル
■ 指定されたサイズに達すると記録を停止するログ・ファイル
■ 循環して記録されるログのため、手動でのメンテナンスが不要なログ・ファイル
運用上の考慮点
正常稼動時は生成されませんが、データベース・マネージャーのクラッシュなど、問題が起きた場合に DIAGPATH 以下に次のログ・ファイルが生成されることがあります。
特にシステム・コアファイルは非常に大きくなる可能性があるので、問題が起きた場合は確認する必要があります。 関連情報
First Occurrence Data Capture 情報
循環するログの定期的なメンテナンスは不要ですが、ログ・サイズの調整が必要な場合があります。
- 単調増加する可能性があるログ・ファイル
- 指定されたサイズに達すると記録を停止するログ・ファイル
- 循環して記録されるログのため、手動でのメンテナンスが不要なログ・ファイル
IBM Docs などの技術文書で、「ログ・ファイル」は多くの場合トランザクション・ログ・ファイルを指します。
本文書ではトランザクション・ログ以外のログも扱うため、「ログ・ファイル」は必ずしもトランザクション・ログでない点に注意してください。
各ファイルのロケーション情報で利用している INSTANCE_DIR、DIAGPATH、DBPATH および DASHOME は以下の表を参照してください。
$INSTANCE_DIR | UNIX/Linux: <インスタンス・オーナーのホーム・ディレクトリー>/sqllib Windows: %DB2INSTPROF%\%DB2INSTANCE% 注: DB2INSTPROF および DB2INSTANCE の値は db2set -all で表示できます。 |
$DIAGPATH | データベース・マネージャー構成パラメーターの DIAGPATH の設定有無、Windows の OS によって違いがあります。詳細は以下のページを参照してください。 [Db2] db2diag.log や管理通知ログの出力先 |
$DBPATH | 1. 以下のコマンドを実行して、該当データベースの"ローカル・データベース・ディレクトリーのパス"と"カタログ・データベース・パーティション番号"を確認してください。
db2 list db directory2.以下のコマンドを実行して、出力された"データベース・ディレクトリー"を確認してください。 db2 list db directory on ["ローカル・データベース・ディレクトリーのパス"]3. 手順 1.2 で確認した各項目とデータベースが存在している DB2 インスタンス名を組み合わせた以下のパスを、$DBPATH と定義します。 ["ローカル・データベース・ディレクトリーのパス"]/[DB2インスタンス名]/NODE000["データベース・パーティション番号"]/["データベース・ディレクトリー"] V10.1 以降、データベース・ディレクトリー (SQL00001 など) に続いてメンバー固有ディレクトリー (MEMBER0000 など) が付加されます。 注: 活動化しているデータベースのメンバー固有ディレクトリーは list active databases コマンドの結果に出力されます。 データベース・メタ・データは、$DBPATH およびメンバー固有ディレクトリーいずれかに出力されます。 |
$DASHOME | DASHOME は DB2 Administration Server 管理ユーザーのホーム・ディレクトリーです。 Linux/UNIX 版 : DAS インスタンス・オーナーのホーム・ディレクトリー Windows 版 : DB2INSTPROF/<DAS インスタンス名> |
■ 単調増加する可能性があるログ・ファイル
トランザクション・ログ (アーカイブ・ロギングの場合)
|
|
出力先 | アクティブ・ログ・パス: データベース構成パラメーターの logpath および mirrorlogpath アーカイブ・ログ・パス: データベース構成パラメーターの logarchmeth* または userexit で指定されたコピー先 |
説明 | DB2 はデータベースへの変更をトランザクション・ログに記録し、リストアからのロールフォワードやクラッシュ・リカバリーに使用します。 循環ロギングの場合は logprimary+logsecond の数のログで循環しますが、アーカイブ・ロギングの場合は生成されたログをユーザーがメンテナンスする必要があります。 データベース構成パラメーター logarchmeth1 と logarchmeth2 の両方が OFF に設定されている場合、 循環ロギングとなり、それ以外の設定であればアーカイブ・ロギングとなります。 |
備考 | logpath - ログ・ファイルのロケーション構成パラメーター mirrorlogpath - ミラー・ログ・パス構成パラメーター logarchmeth1 - 1 次ログ・アーカイブ方式構成パラメーター logarchmeth2 - 2 次ログ・アーカイブ方式構成パラメーター logprimary - 1 次ログ・ファイル数構成パラメーター logsecond - 2 次ログ・ファイル数構成パラメーター logfilsiz - ログ・ファイルのサイズ構成パラメーター トランザクション・ログのメンテナンス方法は、以下の文書を参照してください。 [Db2] ログ・ファイルのメンテナンス方法 トランザクション・ログがフルになった場合は、以下の文書を参照してください。 [Db2] トランザクション・ログがフル (SQL0964C) になったときの対応 |
リカバリー履歴ファイル | |
出力先 | $DBPATH/db2rhist.* |
説明 | リカバリー履歴ファイルはデータベースごとに作成され、 バックアップ、リストア、表スペースの変更、ログファイルの操作などが記録されます。 定期的にバックアップを取得していない場合、PRUNE HISTORY コマンドで明示的にメンテナンスする必要があります。 どの時点までの情報を保管しておくかは運用に依存しますが、削除可能なタイムスタンプを指定して PRUNE HISTORY コマンドを実行することで、指定した日付よりも古い項目が削除されます。 また、バックアップを定期的に取得している場合は、メンテナンスは不要です。データベース構成パラメーター num_db_backups の設定値の回数に達すると、 リカバリー履歴ファイルで古いバックアップが有効期限切れとマークされます。 有効期限が切れたデータベース・バックアップに関連する表スペース・バックアップおよびロード・コピー・バックアップのリカバリー履歴ファイル項目も有効期限切れとマークされます。次のデータベース・バックアップが行われると、有効期限が切れた項目がリカバリー履歴ファイルから除去されるためです。 |
備考 | 回復履歴ファイル リカバリー履歴ファイルのプルーニング リカバリー履歴ファイルが肥大化すると、特定のデータベース操作のパフォーマンスに影響を与えます。 [DB2 LUW] データ量が同じでも BACKUP や LOAD の実行時間が長くなる [DB2 LUW] コミット・アクティブ (Commit Active) によるパフォーマンス遅延の主な原因と対処方法 |
Db2 診断ログ (db2diag.log) | |
出力先 | $DIAGPATH/db2diag.[n].log |
説明 | インスタンスで発生するエラーおよび警告に関する診断情報が記録されます。 主に IBM ソフトウェア・サポートがトラブルシューティングの目的で使用します。 |
備考 | Db2 診断 (db2diag) ログ・ファイル V9.7 以降、DIAGSIZE パラメーターを設定すると、診断ログと管理通知ログは循環して記録されます。 (Windows 版の管理通知ログはイベント・ログに書き込まれるため DIAGSIZEの対象外)
メンテナンスの詳細は以下の FAQ およびマニュアル・ページを参照してください。 [Db2] Db2 診断ログ (db2diag.log) のローテート作業(移動/削除/リネーム) diagsize - 循環診断ログおよび循環管理通知ログ構成パラメーター |
管理通知ログ | |
出力先 | $DIAGPATH/<インスタンス名>.nfy (Linux/UNIX) Windows アプリケーション・イベントログ (Windows) |
説明 | 主にデータベースおよびシステム管理者がトラブルシューティング目的で使用します。 |
備考 | 管理通知ログ Windows のアプリケーション・イベントログの保持ポリシーの設定により循環して記録させることも可能です。詳細は以下の Microsoft 社の技術情報を確認してください。 ログの保持ポリシーを設定する |
DB2 管理サーバー (DAS) 診断ログ | |
出力先 | $DASHOME⁄das⁄dump/db2dasdiag.log (Linux/UNIX) $DASHOME¥dump\db2dasdiag.log (Windows) |
説明 | DAS で発生するエラーおよび警告に関する診断情報が記録されます。 |
備考 | First Occurrence Data Capture (FODC) |
インスタンス起動 / 終了時のエラーログ | |
出力先 |
インスタンス起動時
出力先 : $INSTANCE_DIR/ctrl/db2start.<host>.<タイムスタンプ>.<PID>.errlog (Linux/UNIX) 出力先 : $INSTANCE_DIR\ctrl\db2start.exe.<host>.<タイムスタンプ>.<PID>.errlog (Windows) インスタンス停止時 出力先 : $INSTANCE_DIR/ctrl/db2stop.<host>.<タイムスタンプ>.<PID>.errlog (Linux/UNIX) 出力先 : $INSTANCE_DIR\ctrl\db2stop.exe.<host>.<タイムスタンプ>.<PID>.errlog (Windows) 注: V9.7 以前はのパスは $INSTANCE_DIR\ctrl でなく $INSTANCE_DIR/log 注:V10.1 以前のログ・ファイル名に <host> はありません。
|
説明 | インスタンス起動時、終了時のエラーログが記録されます。 |
備考 | インスタンスの起動と停止時にエラーがなければ記録されません。 |
ガバナー・ログ・ファイル | |
出力先 | 出力先 : $INSTANCE_DIR/log (Linux/UNIX) 出力先 : $INSTANCE_DIR\log (Windows) |
説明 | ガバナーは、データベースに対して実行しているアプリケーションの動作をモニターし、 ガバナー構成ファイルで指定した規則に応じてその動作を変更できます。 ガバナー・デーモンは処置を実行する度に、 ログ・ファイルにレコードを書き込みます。 このログは、ガバナーが開始されているときのみ記録されます。ログ・ファイルはガバナー開始時に指定することができます。 |
備考 | ガバナー・ログ・ファイル ガバナーの開始 注:ワークロード・マネージャーが提供されたことで、Db2 9.7 以降ガバナーは非推奨になっています。 ガバナー・ユーティリティー |
Db2 監査ログ | |
出力先 | $INSTANCE_DIR/security/auditdata 監査ログの出力先は、db2audit コマンドの datapath オプションで変更可能です。 監査アーカイブ・ログの出力先は db2audit コマンドの archivepath オプションで変更可能です。 現在設定されている出力先は、db2audit describe コマンドで表示されます。 インスタンスの監査ログは db2audit.instance.log.<パーティション番号> データベースの監査ログは db2audit.db.<データベース名>.log.<パーティション番号> に出力されます。 |
説明 | 監査ログは手動で除去してはいけません。監査ログは db2audit archive コマンドでアーカイブすると切り捨てられます。アーカイブされた監査ログの名前は以下の通りです。 インスタンス:db2audit.instance.log.<パーティション番号>.<アーカイブ時刻> データベース:db2audit.db.<データベース名>.log.<パーティション番号>.<アーカイブ時刻> アーカイブされた監査ログから audit extract コマンドなどで監査データを抽出後、アーカイブされた監査ログを OS コマンドで除去できます。 アーカイブされた監査ログから監査レコードを抽出する際に、db2audit の extract file オプションでファイル名を指定できます。指定しない場合には、db2audit.out となります。 Db2 監査機能によって、事前に定義したデータベースのイベントに対して監査証跡を生成し、かつその監査証跡を保存できるようにします。 この機能により生成されたレコードは、監査ログ・ファイルに保持されます。 |
備考 | 監査ログの保管と分析 監査ログ・ファイル名 [Db2] Db2 9.5 以降における監査の設定方法 |
Q キャプチャー・ログ (.QCAP.LOG) | |
出力先 | asnqcap コマンドを実行した際のカレント・ディレクトリー/db2instance.capture_server.capture_schema.QCAP.log 実行時に capture_path を指定した場合、指定パス/db2instance.capture_server.capture_schema.QCAP.log |
説明 | デフォルト (logreuse=n) では、Q キャプチャー・プログラムはメッセージをログ・ファイルに付加します。これは、Q キャプチャー・プログラムが再始動された後であっても同様に行われます。メッセージの履歴が必要な場合は、デフォルトのままにしておいてください。次のような場合には、Q キャプチャー・プログラムが再始動時にログを削除して再作成するようにさせる (logreuse=y) 必要があります。
|
備考 | N/A |
Q アプライ・ログ (.QAPP.LOG) | |
出力先 | asnqapp コマンドを実行した際のカレント・ディレクトリー/db2instance.apply_server.apply_schema.QAPP.log 実行時に apply_path を指定した場合、指定パス/db2instance.apply_server.apply_schema.QAPP.log |
説明 | デフォルトでは、Q アプライ・プログラムは開始されるたびに、ログ・ファイルにメッセージを追加します (logreuse=n)。Q アプライ・プログラムから発行されたメッセージの履歴を保存する場合は、デフォルトのままにします。以下のような状況では、logreuse=y を使用して、Q アプライ・プログラムが開始時にログを削除し、再作成するようにできます。
|
備考 | N/A |
キャプチャー・ログ (.CAP.LOG) | |
出力先 | asncap コマンドを実行した際のカレント・ディレクトリー/db2instance.capture_server.capture_schema.CAP.log 実行時に capture_path を指定した場合、指定パス/db2instance.capture_server.capture_schema.CAP.log |
説明 | デフォルト (logreuse=n) では、キャプチャー・プログラムはメッセージをログ・ファイルに付加します。これは、キャプチャー・プログラムが再始動された後であっても同様に行われます。メッセージの履歴が必要な場合は、デフォルトのままにしておいてください。次のような場合には、キャプチャー・プログラムが再始動時にログを削除して再作成するようにさせる (logreuse=y) 必要があります。
|
備考 | N/A |
アプライ・ログ (.APP.LOG) | |
出力先 | asnapply コマンドを実行した際のカレント・ディレクトリー/db2instance.control_server.apply_qualifier.APP.log 実行時に apply_path を指定した場合、指定パス/db2instance.control_server.apply_qualifier.APP.log |
説明 | デフォルトでは、アプライ・プログラムは開始されるたびに、ログ・ファイルにメッセージを追加します (logreuse=n)。アプライ・プログラムから発行されたメッセージの履歴を保存する場合は、デフォルトのままにします。以下のような状況では、logreuse=y を使用して、アプライ・プログラムが開始時にログを削除し、再作成するようにできます。
|
備考 | N/A |
レプリケーション・アラート・モニター | |
出力先 | asnmon コマンド実行時に指定した出力パス |
説明 | レプリケーション・アラート・モニターのログは、アラート・モニターを使用していなければ生成されないログです。
例えば、以下のコマンドは、monitor.trc というファイルにトレース情報を送ります。
|
備考 | Q レプリケーション - トラブルシューティング・データの収集 SQL レプリケーション - キャプチャーの操作パラメーターの説明 SQL レプリケーション - アプライの操作パラメーターの説明 Q レプリケーション - asnqapp パラメーターの説明 |
■ 指定されたサイズに達すると記録を停止するログ・ファイル
ファイル・イベント・モニターのログ・ファイル | |
出力先 | $DBPATH/db2event/<イベント・モニター名> |
説明 | イベント・モニターによって、データベースの使用中に発生する特定のイベントを記録できます。 イベントの記録先はファイル、パイプ、表などから選択できます。記録先がファイルの場合、指定サイズに達するとイベント・モニターは停止します。 ファイルのサイズは、CREATE EVENTMONITOR ステートメントの MAXFILESIZE オプションで設定できます。 デフォルトの設定は、それぞれ以下のとおりです。 UNIX,Linux - 1000 個の 4K ページ Windows - 200 個の 4K ページ また、イベント・モニターの 1 つのイベント・パスで許されるイベント・ファイルの最大数を、MAXFILES で指定することも可能です。 デフォルトではイベント・ファイルの数に制限がない NONE が指定されています。 それぞれ現在の設定値を確認するには、以下のコマンドを実行してください。
|
備考 | イベント・モニターのファイル管理 [DB2 LUW] DB2DETAILDEADLOCK イベント・モニターの再作成方法 |
■ 循環して記録されるログのため、手動でのメンテナンスが不要なログ・ファイル
統計ログ | |
出力先 | $DIAGPATH/events/db2optstats.n.log |
説明 | 統計収集アクティビティをロギングします。デフォルトは合計 100 MB の 5 ファイルで循環します。 合計サイズ、ファイル数、出力先などは DB2_OPTSTATS_LOG レジストリ変数で変更できます。 |
備考 | 自動統計収集アクティビティーのロギング DB2_OPTSTATS_LOG |
セルフ・チューニング・メモリー・マネージャー (STMM) ログ | |
出力先 | $DIAGPATH/stmmlog/stmm.n.log |
説明 | これらのファイルには、STMM によるチューニングに関するログが出力されます。 10 MB のファイルが 5 つ割り当てられ、循環して記録されます。 ファイルのサイズや個数を調整するパラメーターはありません。 |
備考 | N/A |
同期点マネージャー (SPM) ログ | |
出力先 | $INSTANCE_DIR/spmlog 以下 |
説明 | データベース構成パラメーター spm_name が NULL でない場合、インスタンス起動時に同期点マネージャー (SPM) が起動します。 SPM は DB2 LUW と、DB2 for z または i との二相コミットを行う場合に使用され、二相トランザクション・マネージャーのログとして SPM ログが記録されます。 SPM ログは spm_log_path に spm_log_file_sz のサイズのファイルが 3 つ作成され、循環ログとして使用されます。 ログファイルの個数は調整できません。 |
備考 | spm_log_path - 同期点マネージャー・ログ・ファイル・パス構成パラメーター spm_log_file_sz - 同期点マネージャー・ログ・ファイル・サイズ構成パラメーター |
Db2 イベント・ログ | |
出力先 | $DIAGPATH/db2eventlog.<パーティション番号> <パーティション番号>は、db2nodes.cfg 内の dbpartitionnum の値を意味します。 ノード構成ファイルの作成 |
説明 | このファイルには、イベント・ログ、エージェントの生成や割り込みなどの内部動作が記録されます。 6MB の固定サイズで循環するため、メンテナンスの必要はありません。 |
備考 | FODC の一部として収集されたデータ |
GPFS ログ (pureScale クラスターのみ) | |
出力先 | /var/adm/ras/mmfs.log.<date>.<node> |
説明 | Spectrum Scale 起動時の都度生成されます。起動時に 10 日以上アクセスのないログは削除されます。 |
備考 | GPFS logs |
Tivoli System Automation for Multiplatforms (TSAMP) および RSCT スプール・ログ (pureScale および db2haicu による HA を構成している場合) | |
出力先 | /var/ct/* |
説明 | TSAMP および RSCT のトレース・スプーリングの設定により、TSAMP および RSCT デーモンのトレース・ファイルが出力されます。スプール設定によりサイズの上限で自動削除されます。 |
備考 | Steps for setting up Trace Spooling for RSCT/TSAMP Daemons |
Pacemaker および Corosync ログ (Pacemaker によるクラスターを構成している場合) | |
出力先 | /var/log/pacemaker/pacemaker.log /var/log/cluster/corosync.log |
説明 | logrotate によってログ・ファイルが 100MB に達するか 1週間経過するかのいずれか早い方でローテーションされます。古いログは圧縮されて 99 個まで保管されます。 ローテーションの設定を変更する場合は /etc/logrotate.d/pacemaker または /etc/logrotate.d/corosync を変更します。 |
備考 | RedHat:RHEL8 ログ・ローテーション |
運用上の考慮点
正常稼動時は生成されませんが、データベース・マネージャーのクラッシュなど、問題が起きた場合に DIAGPATH 以下に次のログ・ファイルが生成されることがあります。
特にシステム・コアファイルは非常に大きくなる可能性があるので、問題が起きた場合は確認する必要があります。 関連情報
First Occurrence Data Capture 情報
[{"Type":"MASTER","Line of Business":{"code":"LOB10","label":"Data and AI"},"Business Unit":{"code":"BU058","label":"IBM Infrastructure w\/TPS"},"Product":{"code":"SSEPGG","label":"Db2 for Linux, UNIX and Windows"},"ARM Category":[{"code":"a8m500000008PkgAAE","label":"Database Objects"}],"ARM Case Number":"","Platform":[{"code":"PF025","label":"Platform Independent"}],"Version":"All Versions"}]
Was this topic helpful?
Document Information
Modified date:
13 October 2023
UID
swg21632267