*

postgresqlのスロークエリ(スローログ)を取得する

PostgreSQL-9

45年ぶりの雪が、1週おきに降るってどういうことでしょうか?
とは言え、雪が降るといつもと違う雰囲気が楽しめます。
電車が止まったりして交通に影響がでるのは勘弁ですが・・・

さて、ちょっと仕事でpostgresqlの調べものをしたので、自分用のメモとしてエントリーします。
さっそく行きます。

まず、postgresqlのコンフィグファイルを編集します。

下記は自分の環境でのパスなので、適時置き換えてください。

vi /var/lib/pgsql/data/postgresql.conf

log_directory = 'pg_log'
log_filename = 'postgresql-%a.log'

おそらく通常のログが取れていれば、上記の表記になっていると思います。

log_min_duration_statement = 3000

大切なのはここです。
この「log_min_duration_statement」パラメータで、指定の時間を超えたSQLがあった場合に、実行時間とログを記録します。
この場合では3000=3秒に設定しています。

まず3秒くらいにしてみてログをチェックしてみます。
これでログが出なくなるようにSQLを改善しましょう。

コンフィグファイルを変えたら、Postgresqlを再起動します。

/etc/init.d/postgresql restart

再起動したら、対象のサイトを見てみます。
サイトを見たら、早速ログを見てみます。

どうでしょうか?
ログに秒数とSQL文が出てるでしょうか?

もし出ていたら、それが指定の時間を超えたSQLです。
何かしら問題のあるSQLだと考えられますので、SQLを改善してみましょう。
(SQLの改善についてはまた今度・・・)

SQLを改善していって、スローログが出なくなったら、パラメータを1000=2秒、1秒と、徐々に設定しています。
1秒でログが出なくなったら、結構パフォーマンスも改善していると思います。

Google AD


Message

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください

関連記事

wordpressのパーマリンク設定を変更してみたら大丈夫だった件

wordpressでパーマリンクを変えようと思ってたんですが、なかなか踏み切るタイミングがな

記事を読む

facebook for PHP SDKを使ってCakePHPでログアウトとポストする方法

ソチオリンピックではスノーボード・ハーフパイプで平野さん・平岡さんが初のメダル獲得をしました

記事を読む

no image

facebookのビジョンはセマンティックか – ライフログとopen graph

facebookが開発者カンファレンス(f8)でアップデートを発表した。 「また何か機能付

記事を読む

no image

「おっ」と思った記事

前回に引き続き、「おっ」と思ったサイトを紹介します。今回はデザインうんぬんでなく、コンテンツの方で。

記事を読む

no image

img画像に隙間(空間)ができる件

何度か経験してそのたびにイラッときたので自分用にエントリー。 スタイルシートで下記のように記述

記事を読む

CakePHP1.3でブラウザを閉じてもセッションが切れないようにする方法

ちょっと体調を崩してしまってましたが、なんとか回復してきました。(辛かった・・・) 本当に

記事を読む

no image

ロリポップ+お名前.comで独自ドメイン取得

onamae.com で独自ドメイン取得しました。 そのときのメモ。 1.lollipo

記事を読む

【体験談】6年間禁煙を続けられた自分の、禁煙の始め方

4月1日から消費税が8%になり、日用品への影響が少しずつ出てきているころです。 自分はお酒

記事を読む

cakephp

cakephpでPHPのタイムゾーン設定してないとエラーが出る件

ロリポップからさくらにサーバを変えたのは先日のエントリーの通りですが、サーバ環境が違うことでca

記事を読む

no image

windows7のxamppでvirtual hostを設定する

忘れないように忘れてもいいようにエントリー。 タイトルの通りです。 c:/xampp/a

記事を読む

Google AD

Google AD

PAGE TOP ↑