CentOS 7へPostgreSQL Version10をインストールする

PostgreSQLPostgreSQL
PostgreSQL
Table of Content

PostgreSQL10の入手元

CentOS 7 では、ソフトウェアパッケージマネージャとして yum を採用しています。
PostgreSQL 10 をインストールするために、PostgreSQL の公式 yum リポジトリから取得する。

PostgreSQL公式リポジトリの追加

PostgreSQL の公式リポジトリを CentOS 7 に追加。
リポジトリ情報は、PostgreSQL の公式サイトのこちらのページから RPM として提供されています。
yum localinstall コマンドで PostgreSQL 10 用の RPM の URL を指定してインストール。

# yum -y localinstall https://download.postgresql.org/pub/repos/yum/10/redhat/rhel-7-x86_64/pgdg-centos10-10-2.noarch.rpm

パッケージを確認する

まずは PostgreSQL の公式 yum リポジトリで提供されている PostgreSQL 10 の詳細を確認。

PostgreSQL 10 に関連するパッケージは、postgresql10-XX というプレフィックスで始まるパッケージ名になっており、PostgreSQL 10 Server のパッケージ名は postgresql10-serverXX です。

次のように yum info コマンドを実行すると、提供されている PostgreSQL 10 の情報が閲覧できる。

# yum info postgresql10-server Available Packages Name : postgresql10-server Arch : x86_64 Version : 10.1 Release : 1PGDG.rhel7 Size : 4.3 M Repo : pgdg10/7/x86_64 Summary : The programs needed to create and run a PostgreSQL server URL : http://www.postgresql.org/ License : PostgreSQL Description : PostgreSQL is an advanced Object-Relational database management system (DBMS). : The postgresql10-server package contains the programs needed to create : and run a PostgreSQL server, which will in turn allow you to create : and maintain PostgreSQL databases.

この結果の場合は、バージョン 10.1 が利用できることが確認できました。
(また、この情報が表示されたということから、yum で提供されているということも確認できました。)

インストール

PostgreSQL 10 が PostgreSQL のリポジトリで提供されていることを確認できる。
次のように yum install コマンドにパッケージ名 postgresql10-server を指定してインストール。

$ yum -y install postgresql10-server

コマンドの実行後、Complete! と表示されればインストールは完了。
念のため次のように postgres –version というコマンドを実行し、コマンドが利用できること、
インストールされた PostgreSQL のバージョンを確認する。

# /usr/pgsql-10/bin/postgres --version postgres (PostgreSQL) 10.1

データベース初期化

インストールが完了したら、データベースを初期化。
次のように postgresql-setup initdb コマンドを実行。

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

インストールされたファイル

上記のインストール作業により、インストールされたファイル。

ファイル・ディレクトリ説明
/var/lib/pgsql/10/PostgreSQL の設定やデータ、バックアップファイルが保存されるディレクトリ。
/var/lib/pgsql/10/data/postgresql.confPostgreSQLのメインとなる設定ファイル。
/var/lib/pgsql/10/data/pg_hba.confPostgreSQLのユーザ認証についての設定ファイル。
/usr/pgsql-10/bin/createdbPostgreSQLのデータベースを作成するためのコマンド。
/usr/pgsql-10/bin/psqlPostgreSQLを操作するためのクライアント。
/usr/pgsql-10/bin/postgresPostgreSQLサーバー。

サービス化

サーバーを起動・再起動した際に、自動的に PostgreSQL が起動するように設定。
次のように systemctl enable コマンドで postgresql を指定。

# systemctl enable postgresql-10 Created symlink from /etc/systemd/system/multi-user.target.wants/postgresql-10.service to /usr/lib/systemd/system/postgresql-10.service.

起動と停止

さて、それではインストールした PostgreSQL を起動・停止してみる。
起動は systemctl start で postgresql-10 を指定。

# systemctl start postgresql-10

また、停止させたい場合は systemctl stop で postgresql-10 を指定。

# systemctl stop postgresql-10

また、停止と起動を同時に行う(再起動する)場合は systemctl restart で postgresql-10 を指定。

# systemctl restart postgresql-10

ユーザ

PostgreSQL をインストールし終えた現時点でのユーザーについて確認。

Linux ユーザ

CentOS 7 のユーザとして、新たに「postgres」というユーザーが追加されています。
PostgreSQL Server は、このユーザで実行されます。

PostgreSQL ユーザ

また PostgreSQL のユーザとして、同様に「postgres」という状態が初期状態で作成されています。
この postgres ユーザは、インストールした PostgreSQL Server の管理者権限を持つユーザです。
初期状態だとパスワードは設定されていません。

ログインしてみる

最後に、インストールした PostgreSQL にログインしてみる。
次のように postgres ユーザーとして psql を利用してログイン。

`# sudo -u postgres psql -U postgres
could not change directory to "/root"
psql (10.1)
Type "help" for help.

postgres=# ここから PostgreSQL のコマンドを実行できる`

PostgreSQL にログインできることが確認できたら、ここでは \q というコマンドを入力してログアウト。

postgres=# \q

コメント

タイトルとURLをコピーしました