[pgsql-jp: 25723] Re: PostgreSQLでどのようなタスクが実行中か調べる方法を教えてください。
sugita @ sra.co.jp
sugita @ sra.co.jp
2002年 4月 26日 (金) 00:49:44 JST
杉田です。
From: Yukinari Ida <yukina-i @ ascii.co.jp>
Subject: [pgsql-jp: 25720] PostgreSQLでどのようなタスクが実行中か調べる方法を教えてください。
Date: Thu, 25 Apr 2002 23:49:30 +0900
;;; さて現在 FreeBSD4.2 + PostgreSQL7.0.3 + Apache1.3.14
;;; + modphp-3.0.18i18n-ja-2で使用しているのですが、phpからDBにアクセスする
;;; と非常に応答が遅いので、原因を調べるために ターミナルから top コマンドを
;;; 実行したところ以下のように postgres コマンドのCPU負荷が、以上に上昇した
;;; 状態が60分近く続いていることまではわかりました。しかし、具体的にpostgres
;;; のどのような処理で負荷がかかっているかまではこれだけではわかりません。
クエリーでの使用テーブル数はいくつですか? 7.0.3 ではテーブル数が多いとオプ
ティマイザのバグのためメモリと CPU を極端に使用します。その場合の回避方法はあ
ります。
;;; [top コマンドの実行結果]
;;; PID USERNAME PRI NICE SIZE RES STATE TIME WCPU CPU COMMAND
;;; 54189 postgres 55 0 40996K 31444K RUN 56:50 87.06% 87.06% postgres
;;; 11759 root 2 -12 1248K 756K select 5:30 0.00% 0.00% ntpd
;;; 61934 postgres 2 0 7796K 2180K select 4:43 0.00% 0.00% postgres
;;; 236 root 2 0 6292K 4388K select 4:18 0.00% 0.00% httpd
;;; 1212 root 2 0 2060K 1244K select 3:02 0.00% 0.00% nmbd
;;; 246 root 2 0 928K 528K select 2:10 0.00% 0.00% atalkd
;;; 154 root 2 0 352K 124K nfsd 1:38 0.00% 0.00% nfsd
;;; 35861 root 2 0 2384K 2000K sbwait 1:30 0.00% 0.00% afpd
;;; 191 root 10 0 1408K 1096K nanslp 1:09 0.00% 0.00% cron
;;; 139 root 2 0 916K 572K select 1:02 0.00% 0.00% syslogd
;;; 1200 root 2 0 8704K 7616K select 1:00 0.00% 0.00% smbd
;;; 31452 root 2 0 2496K 1648K select 0:53 0.00% 0.00% sendmail
;;; 198 root 2 0 2092K 964K select 0:28 0.00% 0.00% sshd
;;; 980 root 2 0 1208K 784K select 0:15 0.00% 0.00% afpd
;;; 26443 root 2 0 1776K 1392K sbwait 0:10 0.00% 0.00% afpd
;;; 53148 nobody 2 0 7856K 6260K accept 0:10 0.00% 0.00% httpd
;;; 53324 nobody 2 0 8072K 6276K accept 0:09 0.00% 0.00% httpd
Kenji Sugita
sugita @ sra.co.jp
pgsql-jp メーリングリストの案内