今回は、CentOS8でPostgreSQLをインストールし、DBサーバを構築します。
手順
1.CentOS81号機にログイン
2.PostgreSQLのインストール
3.セキュリティ設定
4.動作確認
1.CentOS8 4号機にログイン
TeraTermで、CentOS 4号機にrootでログインします。
2.PostgreSQLのインストール
# PostgreSQLのインストール
[root@CE08PRD101 ~]# dnf module -y install postgresql:12/server
(省略)
インストール済み:
libpq-12.4-1.el8_2.x86_64
postgresql-12.1-2.module_el8.1.0+273+979c16e6.x86_64
postgresql-server-12.1-2.module_el8.1.0+273+979c16e6.x86_64
完了しました!
#
[root@CE08PRDD104 ~]# postgresql-setup --initdb
* Initializing database in '/var/lib/pgsql/data'
* Initialized, logs are in /var/lib/pgsql/initdb_postgresql.log
# 設定ファイル編集
[root@CE08PRDD104 ~]# vi /var/lib/pgsql/data/pg_hba.conf
host all all 127.0.0.1/32 ident
↓
host all all 192.168.0.0/24 trust
[root@CE08PRDD104 ~]# vi /var/lib/pgsql/data/postgresql.conf
listen_addresses = 'localhost' # what IP address(es) to listen on;
↓
listen_addresses = '*' # what IP address(es) to listen on;
# サービス起動
[root@CE08PRDD104 ~]# systemctl enable --now postgresql
Created symlink /etc/systemd/system/multi-user.target.wants/postgresql.service → /usr/lib/systemd/system/postgresql.service.
# サービス起動確認
# Active:がactiveになっていることを確認する。
[root@CE08PRD101 ~]# systemctl status chronyq
● postgresql.service - PostgreSQL database server
Loaded: loaded (/usr/lib/systemd/system/postgresql.service; enabled; vendor preset: disabled)
Active: active (running) since Wed 2020-09-23 19:29:35 JST; 40s ago
(省略)
3.セキュリティ設定
# ファイヤーウォールの許可設定
[root@CE08PRD101 ~]# firewall-cmd --add-service=ntp --permanent
success
[root@CE08PRD101 ~]# firewall-cmd --reload
success
# ファイヤーウォールの許可設定確認
# ftpが追加されたことを確認する。
[root@CE08PRD101 ~]# firewall-cmd --list-all
public (active)
target: default
icmp-block-inversion: no
interfaces: enp0s3
sources:
services: cockpit dhcpv6-client ftp http ntp ssh
(省略)
4.動作確認
# 時刻同期の確認
[root@CE08PRDD104 ~]# su - postgres
[postgres@CE08PRDD104 ~]$
# テストデータベースの作成
[postgres@CE08PRDD104 ~]$ createdb testdb -O postgres
[postgres@CE08PRDD104 ~]$ psql -l
データベース一覧
名前 | 所有者 | エンコーディング | 照合順序 | Ctype(変換演算子) | アクセス権限
-----------+----------+------------------+-------------+-------------------+-----------------------
postgres | postgres | UTF8 | ja_JP.UTF-8 | ja_JP.UTF-8 |
template0 | postgres | UTF8 | ja_JP.UTF-8 | ja_JP.UTF-8 | =c/postgres +
| | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | ja_JP.UTF-8 | ja_JP.UTF-8 | =c/postgres +
| | | | | postgres=CTc/postgres
testdb | postgres | UTF8 | ja_JP.UTF-8 | ja_JP.UTF-8 |
(4 行)
# テストデータベースにログイン
[postgres@CE08PRDD104 ~]$ psql testdb
psql (12.1)
"help"でヘルプを表示します。
# テストテーブルの作成
testdb=# create table test_table (no int,name text);
CREATE TABLE
testdb=# \dt
リレーション一覧
スキーマ | 名前 | 型 | 所有者
----------+------------+----------+----------
public | test_table | テーブル | postgres
(1 行)
# テストテーブルにデータを挿入
testdb=# insert into test_table (no,name) values (01,'taro');
INSERT 0 1
# テストデータの確認
testdb=# select * from test_table;
no | name
----+------
1 | taro
(1 行)