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
-

執筆者:

関連記事

PostgreSQL11に一般ユーザ権限でサンプルDB「dvdrental」をpg_restore

データベースインストール後にサンプルデータを投入することで、DBをバックエンドにして動作する他ミドルの検証が楽になったりすることがあります。 それぞれのデータベースで代表的なサンプルデータセットの存在 …

Linux、Macでハードディスクが一杯になった時の対処

「いつの間にかハードディスク一杯になってた・・・」 運用側が10:0で言い訳出来ない障害の一つなんじゃないでしょうか。 怖い先輩(上役)に体育館裏(会議室)に連れていかれる恐怖を思い出します。 運管ミ …

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

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

CentOS8をPC実機にネットワークインストール(CD使用)

前回Windows上のVirtualBoxにCentOS8をインストールしました。 One IT ThingCentOS8をVirtualBoxにインストールしてXからdnfを打つまでhttps:// …

開発用PostgreSQLをインストールした後の外部接続、ユーザ作成、認証周りの設定

ローカル開発用にPostgreSQLを入れた後、開発や分析をし易くする為に外部ホストからパスワード付き接続出来るようにしていきます。 また、postgresスーパーユーザは権限が強すぎて開発アプリから …

 

shingo.nakanishi
 

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