[pgsql-jp: 41374] Re: データベース接続台数を知る方法について
TAKATSUKA Haruka
harukat @ postgresql.jp
2013年 4月 24日 (水) 11:00:01 JST
高塚です。
8.0.x と書いてありましたね、失礼しました。
ユーザごと接続数上限をつける本機能は、8.0.x では未だ無いですね。
PostgreSQL 8.0.x が古すぎるのは確かです。既に 8.3.x からして修正リリース
対象から外れています。また、Windows版としては、8.2.x より前のバージョンは、
クラッシュする問題が解消されないため、これまでも推奨されませんでした。自前で
ビルドする以外で 8.0.x のWindows実行バイナリを入手するのが困難という問題も
あります。
さて、
SELECT count(*) FROM pg_stat_activity WHERE usename='MyUser'
の数が合わない問題ですが、他の接続があると判定した際に
SELECT * FROM pg_stat_activity WHERE usename='MyUser'
の結果をログに残すようにして、他に何が接続しているか調査しては
いかがでしょうか。
On Tue, 23 Apr 2013 20:24:20 +0900
小沢 和也 (Kazuya Ozawa) <ozawa @ nippa.co.jp> wrote:
> 高塚様
>
> お世話になります。素早いご回答ありがとうございます。
> ロールというのはユーザの事でしょうか。
>
> ご教授いただきましたSQLをPgAdminで実行してみましたが、
> エラーになってしまいます。
>
> ALTER USER MyUser CONNECTION LIMIT 1;
>
> ERROR: syntax error at or near "CONNECTION" at character 20
>
> リンク先のサイトもチェックしましたが、Postgresのバージョンが
> かなり新しいようです(私のが古すぎる?)
> 8.0ではこのSQLは実行不可なのでしょうか。
>
> > foo がアプリ用のロールであるとして、
> > ALTER USER foo CONNECTION LIMIT 1;
> > ではどうでしょうか?
> >
> > [マニュアル CREASTE ROLE]
> > http://www.sraoss.co.jp/PostgreSQL/Manual/document/9.2/html/sql-createrole.html
> >
>
> 小沢和也
___________________________
日本PostgreSQLユーザ会 高塚 遙
pgsql-jp メーリングリストの案内