JSPで行こう!

PostgreSQLのインストール

 CentOS 7 のデフォルトでは、PostgreSQL 9.2 とかなり古いです。
なるべく新しいバージョンをインストールしましょう。

  1. JDK のインストール
  2. Tomcat のインストール
  3. Apache のインストール
  4. PostgreSQL のインストール
  5. アプリケーションの設定

PostgreSQL のバージョン確認

CentOS 7 の現状

# yum list postgresql

利用可能なパッケージ
postgresql.i686 9.2.24-7.el7_9                                    updates
postgresql.x86_64 9.2.24-7.el7_9                                    updates 


PostgreSQL の公式サイトから探します。
https://yum.postgresql.org/

現状(2022/11)ではPostgreSQL 15 あたりが無難そうです。

PostgreSQL をインストールする

yum にレポジトリを追加します。
(一部に epel レポジトリも必要なものもあるようですが基本は不要でした)

Repo RPMs
https://yum.postgresql.org/repopackages/

CentOS 7 - x86_64 のリンク先をダウンロードします。

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

以降は手順だけを記載しますが、詳しい説明は次のサイトの解説を参照して下さい。

https://lets.postgresql.jp/documents/tutorial/yum/yum

インストール可能なパッケージを探します。

# yum search postgresql 

たくさん表示されると思いますが、お好みのバージョンをインストールできます。ここでは PostgreSQL 15 を選択しました。

# yum install postgresql15-server.x86_64 

確認

# rpm -qa | grep postgres
postgresql15-15.1-1PGDG.rhel7.x86_64
postgresql15-server-15.1-1PGDG.rhel7.x86_64
postgresql15-libs-15.1-1PGDG.rhel7.x86_64 

起動するサービス名の確認

# ls /usr/lib/systemd/system/ | grep postgresql
postgresql-15.service

念のため、postgresql-15.service の中身を確認しておきます。
起動ユーザーが postgres になっていること。
OS のユーザーに postgres が存在している事。
PGDATA の場所(パス)を確認。

※ 以降、pgsql-15 を前提に書きますが他のバージョンでも 
   基本(ディレクトリを参照する)同じです。

とりあえず起動するか確認。(たぶん起動しません)

# systemctl start postgresql-15
起動しなかった場合の詳細は
# systemctl status postgresql-15

PGDATA のディレクトリを確認して、何もファイルが無い事を確認します。
initdb コマンドで PGDATA の中身を初期化(作成)する必要があります

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

再度、 start で起動するはずです。

# systemctl start postgresql-15
心配なら、ポートが LISTEN しているのを確認します
# netstat -an | grep 5432

自動起動にする

# systemctl enable postgresql-15 

止める場合

# systemctl stop postgresql-15 

後の操作は、データベースを作ったりしますが、
とりあえず、前に確認しておいた postgres ユーザーで操作します。

# su - postgres
$ psql
psql (15.1)
"help"でヘルプを表示します。

postgres=# \q

で接続を確認できればOKです。

« 前頁 次頁 »