PostgreSQL9.3をCentOS6にyumで入れて設定するまでの手順まとめ

いろいろハマったのでメモ的にエントリー。

環境は以下のとおり。ちなみにCentOS6はVagrantでセットアップしてあります。今、vagrantユーザーでログイン中。

■ yumで何がはいるか確認

一応。

yum list | grep postgresql

8系だったので最新版の9.3を入れます。

■ 公式サイトの指示にしたがってインストール

公式サイトの手順に従います。

sudo rpm -i http://yum.postgresql.org/9.3/redhat/rhel-6-x86_64/pgdg-redhat93-9.3-1.noarch.rpm
sudo yum -y install postgresql93-server postgresql93-contrib
sudo service postgresql-9.3 initdb
sudo chkconfig postgresql-9.3 on
sudo service postgresql-9.3 status
sudo service postgresql-9.3 start

これで起動完了。

あとついでにTimezoneの設定も。

sudo vim /var/lib/pgsql/9.3/data/postgresql.conf

の中で、

timezone = 'Asia/Tokyo'

とすればOK(もしすでにTokyoとかJapanになっていたら省略可)。

■ postgresユーザーになる

PostgreSQLをインストールすると、その中におけるスーパーユーザーであるpostgresユーザーが勝手に追加されます。一応確認。

id postgres

まずはこの子にパスワードを設定します。

sudo passwd postgres

そのあとにpostgresユーザーに切り替えます。パスワードは上で設定したものを入力。

su - postgres

プロンプトが現れるのでpsqlで起動。ちなみにpsqlとだけ打つと、そのときログインしているユーザーで起動します(今はpostgresユーザー)。

psql

■ 作業ユーザーを設定

ユーザーの一覧は次のコマンドで見られます。

\du

postgresユーザーはスーパーユーザー的な扱いなので作業ユーザーを作ります。

この作業ユーザーの名前はCentOS上のユーザー名と同一でなくてはいけないので(設定で変えられるけど)、vagrantユーザーを作りましょう。

create user vagrant createdb password '適当なパスワード' login;

ちなみに最後の「;」を忘れないようにね。

再度一覧を見るとユーザーが作られているのがわかります。

あとはpostgresユーザーからログアウトします。

\q
exit

これで通常のプロンプトに戻るはずです(つまりvagrantユーザーでログインした状態)。

■ 作業ユーザーでログイン

次はvagrantユーザーでデータベースを作ります。

createdb vagrantdb

上のコマンドでは、vagrantdbというデータベースを今ログインしているユーザーを所有者として作ってくれます(つまりvagrantdbの所有者はvagrant)。

そこまで出来たらvagrantユーザーでログインします。

psql vagrantdb

プロンプトが現れるのでcreate tableするなりなんなりやってみてくださいな。


慣れないとユーザー周りがちょっと混乱しちゃうかもですね。ご参考までに。

ちなみにドットインストールでもレッスンがありますよ。こちらもあわせてどうぞ。

» PostgreSQL入門 (全16回) – プログラミングならドットインストール

Pocket

SPONSORED LINK

Leave a Reply

Your email address will not be published. Required fields are marked *