概要
複数メンバーが触れる環境下で、Azure Database for PostgreSQL Serverを利用していると、いつの間にかサーバーパラメーターが変更されていることがある。
ここでは、そういった場合どうやって原因を確認すれば良いのかを記載する。
要因
Azure Database for PostgreSQL Serverのサーバーパラメーターは自身の変更以外で設定が変わることはない。
設定が変更される原因としては、一般的に以下が考えられる。
- ポイントインタイムリストア(PITR)を使いバックアップからデータベースを新しく作成された可能性
(PITRの場合、バックアップから新しく作成されたサーバーのサーバーパラメーターは既定値となるため) - 他のユーザーが誤ってサーバーパラメーターを変更したり、既定値にリセットしてしまった可能性
手順
サーバーパラメーターの変更履歴は以下で確認可能。
- アクティビティログ
- サーバーログ
アクティビティログ
アクティビティログからは直近90日間の操作履歴が確認でき、サーバーパラメーターの変更については操作名が”Batch Update Server Configuration”で記録される。
本ログより作業を行なった日時や作業を行なったユーザー名の確認が可能。
また、直近2週間以内の操作の場合は、その操作内容の詳細(具体的にどのサーバーパラメーターをいくつからいくつの値に変更したのか)をアクティビティログ内の”変更履歴”(Change history)タブより確認が可能。
サーバーログ
サーバーログからはサーバーパラメーターの変更履歴を含めたログを確認することが可能。
具体的には、サーバーパラメーターの変更を行なった場合には以下のログが記録される。
—–<ログ例>—–
2021-12-14 04:26:09 UTC-618a19fe.68-LOG: parameter
“min_parallel_index_scan_size” changed to “52488”
———————
サーバーログの保持期間は既定で3日間(設定変更により最長7日間)となっている。
そのため、3日以上前のデータを参照する必要がある場合には、診断設定画面よりサーバーログをLogAnalyticsやAzure Storageに転送して保存することを検討する必要がある。
なお、サーバーパラメーターの変更履歴を確認する方法はアクティビティログ、サーバーログ以外はない模様。
コメント