db2トランザクションログがいっぱいになった場合の対処法
DB2のトランザクションログが一杯になった場合には、以下の手順でトランザクションログをクリーンアップすることができます。
- トランザクション ログ使用状況の確認: 次のコマンドを実行してトランザクション ログ使用状況を確認します:
- db2 list history backup all for
- これにより、トランザクションログの使用状況、使用済みログファイルと未使用のログファイルを含め、表示されます。
- トランザクションログのバックアップ:トランザクションログを消去する前に、トランザクションログファイルをバックアップすることをお勧めします。トランザクションログをバックアップするには、次のコマンドを実行します。
- db2 backup db <データベース名> online to <バックアップ場所>
- 必要なときに復元できるようにトランザクションログのバックアップファイルを生成します。
- データベースの停止:次のコマンドを実行してデータベースを停止します。
- DB2はデータベース・マネージャーを停止します。
- トランザクションログのクリーンアップ:次のコマンドを実行してトランザクションログをクリーンアップします。
- db2 prune logfile 以前
- タイムスタンプに以前のタイムスタンプを書き換え、保持するトランスアクションログファイルの日時を設定します。これによって、指定したタイムスタンプより前のすべてのトランスアクションログファイルは削除されます。
- データベースの起動:次のコマンドを実行してデータベースを起動します。
- db2startの実行
トランザクションログのクリーンアップは、完全なログリカバリ操作を不可能にする可能性があります。したがって、この操作を実行する前に、適切なバックアップが行われ、潜在的なリスクが評価されていることを確認してください。これらの手順の実行方法が不明な場合は、DB2データベース管理者またはDB2テクニカルサポートに相談することをお勧めします。