PostgreSQLでは、遅いクエリをログファイルまたはテーブルに記録できます。これらのログを解析すると、データベースの速度を低下させているクエリを簡単に特定するのに役立ちます。 PostgreSQLで低速クエリログを有効にする手順は次のとおりです。これらを使用して、RDS、Redshift、およびその他のPostgreSQLデータベースで低速のクエリログを有効にすることもできます。
PostgreSQLで低速クエリログを有効にする方法
postgresql.conf のいくつかの設定を変更するだけで、PostgreSQLで遅いクエリを識別できます。 ファイル
1。 postgresql.confの場所を見つける
ターミナルを開き、次のコマンドを実行して、データベースのpostgresql.confファイルの場所を見つけます。
$ find / -name postgresql.conf
/etc/postgresql/9.1/main/postgresql.conf
ボーナスリード:PostgreSQLマテリアライズドビュー
2。 postgresql.confを開きます
次のコマンドを実行して、postgresql.confファイルをテキストエディタで開きます
$ vi /etc/postgresql/9.1/main/postgresql.conf
ボーナスリード:PostgreSQLでグループごとに最後の行を取得する方法
3。 PostgreSQLで低速クエリログを有効にする
次の行を検索します
#log_min_duration_statement = -1
最初の#を削除してコメントを外します。また、-1をミリ秒単位のクエリ実行時しきい値に置き換えます。たとえば、実行に1秒以上かかるクエリをログに記録する場合は、-1を1000に置き換えます
log_min_duration_statement = 1000
ファイルを保存して終了します
次の行も探してください、
logging_collector = on
logging_collectorを確認してください onに設定されています 。
ボーナスリード:PostgreSQLでヒストグラムを作成する方法
4。遅いクエリログを見つける
postgresql.confにも別の変数があります
log_directory = 'pg_log'
これは、PostgreSQLログファイルが/ var / lib / pgsql / data / pg_log /
にあることを示しています。
5。 PostgreSQLデータベースを再起動します
次のコマンドを実行してPostgreSQLを再起動します
Ubuntu / Debian
$ sudo systemctl restart postgresql
CentOS / Redhat
# /etc/init.d/postgresql restart
うまくいけば、上記の記事がPostgreSQLで遅いクエリをログに記録するのに役立つでしょう。