PostgreSQL9.6.1のDB構築基礎

投稿者: | 2017年1月23日

昨日インストールしたPostgreSQLのDBを作ります。

初期設定

postgresユーザ作成

$ useradd postgres
$ passwd postgres

DBディレクトリ作成

$ mkdir -p /var/lib/pgsql/9.6.1

権限付与

$ chown -R postgres:postgres /var/lib/pgsql/
$ chown -R 0700 /var/lib/pgsql/

DB作成

$ su postgres
$ /usr/pgsql/9.6.1/bin/initdb –no-locale -D /var/lib/pgsql/9.6.1/data -E UTF-8

起動スクリプト作成

$ cp /tmp/postgresql-9.6.1/contrib/start-scripts/linux /etc/init.d/postgresql961
$ chmod 0755 /etc/init.d/postgresql961

起動スクリプト修正

$ vi /etc/init.d/postgresql961

prefixとPGDATAをシステムに合わせて変更
prefix=/usr/pgsql/9.6.1
PGDATA=”/var/lib/pgsql/9.6.1/data”

起動スクリプト設置

$ systemctl enable postgresql961
$ systemctl start postgresql961

アクセス制御

N/W越しのアクセスを許可する

$ vi /var/lib/pgsql/9.6.1/data/pg_hba.conf
# IPv4 local connections:
host all all 127.0.0.1/32 trust
host all all 192.168.2.0/24 trust

接続を許可するIPを指定する

$ vi /var/lib/pgsql/9.6.1/data/postgresql.conf
# – Connection Settings –
listen_addresses = ‘*’

設定を反映させる

$ systemctl restart postgresql961

ファイアウォール設定

PostgreSQLで使用する5432ポートを空ける

$ firewall-cmd –zone=public –permanent –add-port=5432/tcp
$ systemctl restart firewalld