PostgreSQLは、Linux、Microsoft Windows、Mac OS Xなどのさまざまなプラットフォームで利用できる無料のオープンソースオブジェクトリレーショナルデータベース管理システム(ORDBMS)です。
PostgreSQLはPGDG(PostgreSQL Global Development Group)によって開発され、無料のオープンソースソフトウェアであるPostgreSQLライセンスの下でリリースされています。
この投稿では、CentOS 8 / Rocky Linux 8 /RHEL8にPostgreSQLをインストールする方法を説明します。
CentOS 8 / Rocky Linux 8 /RHEL8にPostgreSQLをインストールする
CentOS 8 / Rocky Linux 8 /RHEL8のPostgreSQLパッケージは2つの方法で入手できます。
- 公式PostgreSQLリポジトリ(v14、13、12、11、10)
- AppStreamリポジトリ(v13、12、10、9.6)
PostgreSQLコミュニティはCentOS8/ Rocky Linux 8 / RHEL 8用のPostgreSQLパッケージを提供しています。PostgreSQLが提供するパッケージは常に最新であり、PostgreSQLコミュニティによってサポートされています。
PostgreSQLリポジトリを追加
まず、以下に示すように、PostgreSQLリポジトリ構成をシステムにインストールします。
dnf install -y https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm
PostgreSQLのインストール
次に、dnf
を使用してPostgreSQLサーバーをインストールします そのバージョンpostgresql<VERSION>-server
に言及することによるコマンド 。このデモでは、PostgreSQL14をインストールしています。
dnf -qy module disable postgresql dnf install -y postgresql14-server
PostgreSQLをインストールした後、初めて使用する前にデータベースを初期化します。
/usr/pgsql-14/bin/postgresql-14-setup initdb
出力:
Initializing database ... OK
PostgreSQLデータは通常/var/ lib / pgsql / 14 /data/ディレクトリにあります。
PostgreSQLサービスの管理
PostgreSQLサービスを開始するには、次を実行します:
systemctl start postgresql-14
システムの起動時にPostgreSQLを有効にするには、次のコマンドを実行します。
systemctl enable postgresql-14
PostgreSQLサービスのステータスを確認するには、次のコマンドを実行します。
systemctl status postgresql-14
PostgreSQLサーバーの構成
デフォルトでは、PostgreSQLはローカルホストでリッスンします。したがって、サーバー上で実行されているアプリケーションのみがデフォルトでデータベースサーバーに接続でき、外部アプリケーションによるデータベースへの接続を制限できます。
構成ファイルを編集して、外部マシンのデータベースサービスアクセスを有効にします。
vi /var/lib/pgsql/14/data/postgresql.conf
listen_addressesを*に設定します。
listen_addresses = '*'
PostgreSQLサービスを再起動します。
systemctl restart postgresql-14
netstatコマンドを使用して、すべてのネットワークインターフェイスのポート5432でPostgreSQLがリッスンしていることを確認します。
netstat -antup | grep 5432
出力:
tcp 0 0 0.0.0.0:5432 0.0.0.0:* LISTEN 4156/postmaster tcp6 0 0 :::5432 :::* LISTEN 4156/postmaster
AppStreamリポジトリからPostgreSQLをインストール
PostgreSQLは、RedHatのApplicationStream(rhel-8-for-x86_64-appstream-rpms)からRHEL 8で、AppStreamリポジトリからCentOS 8で利用できるようになりました。PostgreSQL13、12、10、および9.6はAppStreamリポジトリから利用できます。dnf module list postgresql
出力:
Name Stream Profiles Summary postgresql 9.6 client, server [d] PostgreSQL server and client module postgresql 10 [d] client, server [d] PostgreSQL server and client module postgresql 12 client, server [d] PostgreSQL server and client module postgresql 13 client, server [d] PostgreSQL server and client module Hint: [d]efault, [e]nabled, [x]disabled, [i]nstalled
PostgreSQLのインストール
dnf
を使用してPostgreSQLをインストールします 指図。 postgresql:stream
を使用して別のバージョンをインストールできます dnfコマンドで。
# PostgreSQL 10 dnf install -y @postgresql # PostgreSQL 13 dnf install -y @postgresql:13
PostgreSQLをインストールした後、初めて使用する前にデータベースを初期化します。
/usr/bin/postgresql-setup --initdb
出力:
* Initializing database in '/var/lib/pgsql/data' * Initialized, logs are in /var/lib/pgsql/initdb_postgresql.log
PostgreSQLデータは通常/var/ lib / pgsql/dataディレクトリにあります。
PostgreSQLサービスの管理
PostgreSQLサービスを開始するには、次を実行します:
systemctl start postgresql
システムの起動時にPostgreSQLを有効にするには、次のコマンドを実行します。
systemctl enable postgresql
PostgreSQLサービスのステータスを確認するには、次のコマンドを実行します。
systemctl status postgresql
PostgreSQLサーバーの構成
デフォルトでは、PostgreSQLはローカルホストでリッスンします。したがって、サーバー上で実行されているアプリケーションのみがデフォルトでデータベースサーバーに接続でき、外部アプリケーションによるデータベースへの接続を制限できます。
構成ファイルを編集して、外部マシンのデータベースサービスアクセスを有効にします。
vi /var/lib/pgsql/data/postgresql.conf
listen_addressesを*に設定します。
listen_addresses = '*'
PostgreSQLサービスを再起動します。
systemctl restart postgresql
netstatコマンドを使用して、すべてのネットワークインターフェイスのポート5432でPostgreSQLがリッスンしていることを確認します。
netstat -antup | grep 5432
出力:
tcp 0 0 0.0.0.0:5432 0.0.0.0:* LISTEN 4156/postmaster tcp6 0 0 :::5432 :::* LISTEN 4156/postmaster
PostgreSQLサーバーにアクセス
データベースにアクセスまたは操作するには、postgres(Linuxユーザー)ユーザーとしてログインし、psql
を実行します。 コマンド。
su -l postgres
psqlコマンドを使用してデータベースにアクセスします。
$ psql
出力:
psql (13.5) Type "help" for help. postgres=#の場合は「help」と入力します
postgres(データベース管理者)ユーザーのパスワードを設定します。
postgres=# \password
結論
それで全部です。 CentOS 8 / Rocky Linux 8 /RHEL8にPostgreSQLをインストールする方法を学んだことを願っています。