第4章 PostgreSQL の使用
PostgreSQL サーバーは、SQL 言語をベースにした、オープンソースの堅牢かつ拡張性に優れたデータベースサーバーです。PostgreSQL サーバーは、オブジェクトリレーショナルデータベースシステムを提供します。これにより、広範なデータセットと多数の同時ユーザーを管理できます。このような理由から、PostgreSQL サーバーは、大量のデータを管理するためにクラスターで使用できます。
PostgreSQL サーバーには、データの整合性の確保、耐障害性のある環境やアプリケーションの構築を行うための機能が含まれます。PostgreSQL サーバーを使用すると、データベースを再コンパイルすることなく、独自のデータ型、カスタム関数、またはさまざまなプログラミング言語のコードでデータベースを拡張できます。
RHEL システムに PostgreSQL をインストールして設定する方法、PostgreSQL データをバックアップする方法、および PostgreSQL の以前のバージョンから移行する方法を説明します。
4.1. PostgreSQL のインストール
RHEL 9.0 は、この Application Stream の初期バージョンとして PostgreSQL 13 を提供します。これは、RPM パッケージとして簡単にインストールできます。
RHEL 9 のマイナーリリースで、ライフサイクルがより短い追加の PostgreSQL バージョンが、モジュールとして提供されます。
-
RHEL 9.2 で、PostgreSQL 15 が
postgresql:15
モジュールストリームとして導入されました。 -
RHEL 9.4 で、PostgreSQL 16 が
postgresql:16
モジュールストリームとして導入されました。
PostgreSQL をインストールするには、以下の手順に従います。
設計上、同じモジュールの複数のバージョン (ストリーム) を並行してインストールすることはできません。したがって、postgresql
モジュールから利用可能なストリームのいずれかを選択する必要があります。コンテナー内では、別々のバージョンの PostgreSQL データベースサーバーを使用できます。コンテナー内で複数の PostgreSQL バージョンを実行する を参照してください。
手順
PostgreSQL サーバーパッケージをインストールします。
PostgreSQL 13 の場合は、RPM パッケージからインストールします。
dnf install postgresql-server
# dnf install postgresql-server
Copy to Clipboard Copied! PostgreSQL 15 または PostgreSQL 16 の場合は、
postgresql
モジュールからストリーム (バージョン) 15 または 16 を選択し、server
プロファイルを指定します。以下に例を示します。dnf module install postgresql:16/server
# dnf module install postgresql:16/server
Copy to Clipboard Copied! postgres
のスーパーユーザーが自動的に作成されます。
データベースクラスターを初期化します。
postgresql-setup --initdb
# postgresql-setup --initdb
Copy to Clipboard Copied! Red Hat は、デフォルトの
/var/lib/pgsql/data
ディレクトリーにデータを保存することを推奨します。postgresql
サービスを開始します。systemctl start postgresql.service
# systemctl start postgresql.service
Copy to Clipboard Copied! postgresql
サービスが、システムの起動時に起動するようにします。systemctl enable postgresql.service
# systemctl enable postgresql.service
Copy to Clipboard Copied!
RHEL 9 内の以前の postgresql
ストリームからアップグレードする場合は、後続のストリームへの切り替え と RHEL 9 バージョンの PostgreSQL への移行 の両方の手順に従ってください。