ユーザpostgresでなく、自分のユーザー名でPostgreSQLが起動・終了できるように環境構築する
例えば、自分しか使わないPCにPostgreSQLをインストールし、個人用データベースなど使うときだけ起動したい場合など、ユーザpostgresではなく自分のユーザー名でPostgreSQLを起動・終了できると便利なことがある。
このためには、最初にinitdbでPostgreSQLのクラスタを構築する際、「--username=(自分のユーザー名)」を指定してinitdbすることで、ユーザpostgresではなく自分のユーザー名で構築するとよい。
$ ./initdb --pgdata=/usr/local/pgsql/data --username=testnoda : : Success. You can now start the database server using: ./postgres -D /usr/local/pgsql/data or ./pg_ctl -D /usr/local/pgsql/data -l logfile start $
これで、自分のユーザー名からPostgreSQLが起動できるようになる。
$ whoami testnoda $ ./postgres -D /usr/local/pgsql/data LOG: database system was shut down at 2012-12-09 11:45:57 JST LOG: autovacuum launcher started LOG: database system is ready to accept connections : :
注意点として、pgadminから接続するときも、自分のユーザー名で接続する必要がある。
以下の接続を新規作成した例では、「ユーザー名」のところは、デフォルトではpostgresだが、自分のユーザー名でinitdbをしたから自分のユーザー名になっている。