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の有効化と共通鍵暗号の動作確認

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

podmanをdockerとして使う

docker代替としてRHEL系OSにデフォルト搭載されたpodmanは当初、dockerを期待している他周辺ソフトウェア(docker-componseやgitlab-runnerなど)と素直に通信 …

認証付きHTTPプロキシを認証無しで利用する下位プロキシをsquidで構築

目次1 はじめに2 環境3 手順3.1 squidをインストール3.2 /etc/squid/squid.confを設定4 squid起動4.1 3128ポート開放4.2 各種端末で上記プロキシを設定 …

VirtualBoxにUbuntu18.04をインストール(SSH接続するまで)

2019年も変わらずLinuxディストリシェアトップをキープしたUbuntuをVirtualBoxでインストールします。 マイナビニュース  7 UsersDebianとCentOS下落- …

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

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

 

shingo.nakanishi
 

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