CentOS 7
 

PostgreSQL 9.2 : インストール
2015/07/23
 
PostgreSQL をインストールし、データベースサーバーを構築します。
[1] PostgreSQL をインストールして起動します。
[root@dlp ~]#
yum -y install postgresql-server
[root@dlp ~]#
postgresql-setup initdb

Initializing database ... OK
[root@dlp ~]#
vi /var/lib/pgsql/data/postgresql.conf
# 59行目:他ホストからのアクセスも受け付ける場合はコメント解除して変更

listen_addresses = '
*
'
# 395行目:ログ形式を変更する場合はコメント解除して追記 (以下は [日時 ユーザー DB ~] 形式)

log_line_prefix = '
%t %u %d
'
[root@dlp ~]#
systemctl start postgresql

[root@dlp ~]#
systemctl enable postgresql

[2] PostgreSQL を他ホストからも利用する場合 且つ Firewalld を有効にしている場合は、PostgreSQL サービスの許可が必要です。
[root@dlp ~]#
firewall-cmd --add-service=postgresql --permanent

success
[root@dlp ~]#
firewall-cmd --reload

success
[3] PostgreSQL 管理者ユーザーのパスワード設定、ユーザー登録、データベース作成を実施します。
# パスワード設定

[root@dlp ~]#
su - postgres

-bash-4.2$
psql -c "alter user postgres with password 'password'"

ALTER ROLE
# DBユーザー「cent」を登録

-bash-4.2$
createuser cent
# テストデータベース作成 (オーナーは上記ユーザー)

-bash-4.2$
createdb testdb -O cent
[4] DB 登録したユーザーでログインし、データベース操作のテストをします。
# 確認

[cent@dlp ~]$
psql -l

                                  List of databases
   Name    |  Owner   | Encoding |   Collate   |    Ctype    |   Access privileg
es
-----------+----------+----------+-------------+-------------+------------------
-----
 postgres  | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 |
 template0 | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =c/postgres    +
           |          |          |             |             | postgres=CTc/postgres
 template1 | postgres | UTF8     | en_US.UTF-8 | en_US.UTF-8 | =c/postgres    +
           |          |          |             |             | postgres=CTc/postgres
 testdb    | cent     | UTF8     | en_US.UTF-8 | en_US.UTF-8 |
(4 rows)

# テストDBに接続

[cent@dlp ~]$
psql testdb

psql (9.2.13)
Type "help" for help.
# パスワード設定

testdb=#
alter user cent with password 'password';

ALTER ROLE
# テストテーブル作成

testdb=#
create table test ( no int,name text );

CREATE TABLE
# テストデータ挿入

testdb=#
insert into test (no,name) values (1,'cent');

INSERT 0 1
# 確認

testdb=#
select * from test;
 no | name
----+-------
  1 | cent
(1 row)
# テストテーブル削除

testdb=#
drop table test;

DROP TABLE
# 終了

testdb=#
\q
# テストDB削除

[cent@dlp ~]$
dropdb testdb
 
Tweet