昨日インストールした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