CentOS linux PostgreSQL

CentOS8にPostgreSQL12をインストールする手順

投稿日:

以前CentOS7にPostgreSQL11をインストールしてSQL実行しました。

今回はCentOS8、PostgreSQL12バージョンです。
yumがdnfに変わったくらいで基本的な手順は変わりません。

構築する環境

$ cat /etc/redhat-release
CentOS Linux release 8.0.1905 (Core)

$ psql --version
psql (PostgreSQL) 12.3

構築開始

公式サイトでOSバージョン、PostgreSQLバージョンを選んで手順を確認しておきます。

pgdgリポジトリファイルをインストール

CentOS7時代とURLが変わっており、7のままだとインストールがコケます。

# dnf install https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm

/etc/yum.repos.d/pgdg-redhat-all.repoが追加されたことを確認。

# ls -l /etc/yum.repos.d/

  (snip)

-rw-r--r--  1 root root 9154  4月 27 06:40 pgdg-redhat-all.repo

既存PostgreSQL関連モジュールを無効化

新規インストールだけど公式手順に従います。yum時代には無かった親切機能。

# dnf -qy module disable postgresql

インストール

# dnf install postgresql12-server

postgresql12-serverをインストールすると依存で

  • postgresql12
  • postgresql12-libs

もインストールされます。

データベースを初期化

/var/lib/pgsql/12/dataディレクトリを生成します。

# /usr/pgsql-12/bin/postgresql-12-setup initdb
Initializing database ... OK

起動

常時起動設定、起動。

# systemctl enable postgresql-12
# systemctl start postgresql-12
# systemctl status postgresql-12

動作確認

postgresスーパーユーザになって動確してみます。

# su - postgres

$ psqlpsql (12.3)
"help"でヘルプを表示します。

postgres=# \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
(3 行)

postgres=# select version();
                                                version
--------------------------------------------------------------------------------------------------------
 PostgreSQL 12.3 on x86_64-pc-linux-gnu, compiled by gcc (GCC) 8.3.1 20191121 (Red Hat 8.3.1-5), 64-bit
(1 行)

一般ユーザ作成、外部接続設定

CentOS7、PostgreSQL11時代と変わりはありません。以下参照です。

-CentOS, linux, PostgreSQL
-

執筆者:

関連記事

pgcryptoで公開鍵暗号の動作確認

共通鍵暗号で暗号化されたデータはパスワードが漏洩すると復号される危険が高まるのに対し、公開鍵暗号で暗号化されたデータは秘密鍵とパスワードの二つが漏洩しないと復号できません。 APサーバとDBサーバ通信 …

ERROR: Several keys given – pgcrypto does not handle keyring、またはERROR: Corrupt ascii-armor

gpgキーストアに同じUIDで複数の鍵ペアを登録してしまうと、ファイルにexportした際に1ファイルに複数の鍵情報が入ってしまい、1ファイル1鍵を期待しているpgcryptoに怒られます。 目次1 …

Omnibus版のGitLab、Mattermostデータベースに外部ホストからJDBCで接続

Omnibusで入れたPostgreSQLは、 Unix Domainソケットで接続待機Peer認証で認証 していて外部からの接続は出来ないことが前回分かりました。One IT Thing  …

podman + docker-comopseでwordpressを起動

前回podmanをdockerとして使えるようになりました。 One IT Thing  2 Pocketspodmanをdockerとして使うhttps://one-it-thing.co …

pgcryptoの有効化と共通鍵暗号の動作確認

PostgreSQLで「pgcrypto」拡張機能を有効にすると、PostgreSQLに保存するデータを暗号化出来るようになります。 INSERTする際、共通鍵暗号はpgp_sym_encrypt関数 …

 

shingo.nakanishi
 

東京在勤、1977年生まれ、IT職歴2n年、生涯技術者として楽しく生きることを目指しています。デスマに負けず健康第一。