[pgsql-jp: 41375] Re: データベース接続台数を知る方法について

Tsunakawa, Takayuki tsunakawa.takay @ jp.fujitsu.com
2013年 4月 24日 (水) 11:20:30 JST


綱川といいます。

もしアプリケーションで使うユーザが複数存在するならば、次のようにして、
データベースへの接続数を限定することもできます。

ALTER DATABASE mydatabase CONNECTION LIMIT 1;

ただし、こういった接続数の制限は、データベースのスーパーユーザには適用されません。
スーパーユーザはこの設定に関係なく、max_connectionsパラメータの
指定値分だけ接続を確立できます。
アプリケーションでスーパーユーザを使うことはないでしょうから、これが現実に問題とはならないとは思いますが。

上記も8.1以降でサポートされていますので、8.0では使えません。
現在、コミュニティは8.3以降のみをサポートしています。
8.2以前についてはバグ修正が提供されないので、最新版にアpップグレードすることを検討されたほうがよいでしょう。


以上

> -----Original Message-----
> From: pgsql-jp-bounces @ ml.postgresql.jp
> [mailto:pgsql-jp-bounces @ ml.postgresql.jp] On Behalf Of 小沢 和也
> (Kazuya Ozawa)
> Sent: Tuesday, April 23, 2013 8:24 PM
> To: PostgreSQL Japanese Mailing List
> Subject: [pgsql-jp: 41373] Re: データベース接続台数を知る方法について
> 
> 高塚様
> 
> お世話になります。素早いご回答ありがとうございます。
> ロールというのはユーザの事でしょうか。
> 
> ご教授いただきました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-create
> role.html	

======================================================================
Takayuki Tsunakawa
Development Dept.II.  Data Management Middleware Div.
Middleware Business Unit.  Software Business Group.
Fujitsu Limited
e-mail: tsunakawa.takay @ jp.fujitsu.com
Phone: +81-55-924-7254  ext: 7551-3434
Fax  : +81-55-6197


> -----Original Message-----
> From: pgsql-jp-bounces @ ml.postgresql.jp
> [mailto:pgsql-jp-bounces @ ml.postgresql.jp] On Behalf Of 小沢 和也
> (Kazuya Ozawa)
> Sent: Tuesday, April 23, 2013 8:24 PM
> To: PostgreSQL Japanese Mailing List
> Subject: [pgsql-jp: 41373] Re: データベース接続台数を知る方法について
> 
> 高塚様
> 
> お世話になります。素早いご回答ありがとうございます。
> ロールというのはユーザの事でしょうか。
> 
> ご教授いただきました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-create
> role.html
> >
> 
> 小沢


pgsql-jp メーリングリストの案内