sql >> データベース >  >> RDS >> PostgreSQL

PostgreSQLで遅いクエリログを有効にする方法

    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で遅いクエリをログに記録するのに役立つでしょう。

    1. 制限を超えると、主キーIDはどうなりますか?

    2. 不明な列数でのSQLServer2005のピボット

    3. ダイナミックサンプリング12cで私を殺す

    4. SQL Server接続文字列の初期カタログのポイントは何ですか?