PostgreSQL 10 インストールメモ
2017/10/5にPostgreSQLのバージョン 10がリリースされたので、
インストールして、新機能を試したいと思います。
環境情報
# cat /etc/redhat-release Red Hat Enterprise Linux Server release 7.3 (Maipo)
1.環境準備
1.1.make
# gmake -version GNU Make 3.82 [省略]
1.2.gcc
# gcc -v [省略] gcc version 4.8.5 20150623 (Red Hat 4.8.5-11) (GCC)
1.3. Readline
# yum install readline Package readline-6.2-10.el7.x86_64 already installed and latest version Nothing to do # yum install readline-devel Package readline-devel-6.2-10.el7.x86_64 already installed and latest version Nothing to do
1.4. zlib
# yum install zlib Package zlib-1.2.7-17.el7.x86_64 already installed and latest version Nothing to do # yum install zlib-devel Package zlib-devel-1.2.7-17.el7.x86_64 already installed and latest version Nothing to do
2.PostgreSQLインストール
2.1.postgresユーザ作成
# useradd postgres10
2.2.ソースの入手と解凍
# cd /usr/local/src/ # wget https://ftp.postgresql.org/pub/source/v10.0/postgresql-10.0.tar.gz # tar xvzf postgresql-10.0.tar.gz # chown -R postgres10:postgres10 postgresql-10.0
2.3.コンパイル
# su - postgres10 $ cd /usr/local/src/postgresql-10.0/ $ ./configure $ gmake world ※ (省略) PostgreSQL, contrib, and documentation successfully made. Ready to install.
※ドキュメント(HTMLやman)や追加モジュール(contrib)を含め、構築可能なもの全てを構築したい場合、上記の様にworldを付与して実行
2.4.リグレーションテスト
$ gmake check (省略) ======================= All 178 tests passed. ======================= (省略)
2.5.インストール
$ su # gmake install-world (省略) PostgreSQL, contrib, and documentation installation complete.
2.6.インストールディレクトリの所有者変更
# cd /usr/local/ # chown -R postgres10:postgres10 pgsql/
2.7.postgres用ユーザの環境変数設定
# su - postgres10 $ vi .bash_profile (下記を設定) # PostgreSQL export POSTGRES_HOME=/usr/local/pgsql export PGDATA=/home/postgres10/data export PATH=$PATH:$POSTGRES_HOME/bin export PGLIB=/usr/local/pgsql/lib export MANPATH="$MANPATH":$POSTGRES_HOME/man export LD_LIBRARY_PATH=/usr/local/pgsql/lib:$LD_LIBRARY_PATH
2.7.postgresユーザの環境変数設定読み込み
$ source .bash_profile
2.8.データベースクラスタの作成
$ initdb -E UTF8 --no-locale
2.9.ログ出力設定
# ログのみ出力(その他の設定は省略)
$ vi /home/postgres10/data/postgresql.conf #logging_collector = off # Enable capturing of stderr and csvlog logging_collector = on
2.10.PostgreSQL起動
$ pg_ctl start waiting for server to start....2017-10-21 22:38:12.421 JST [12521] LOG: listening on IPv6 address "::1", port 5432 2017-10-21 22:38:12.421 JST [12521] LOG: listening on IPv4 address "127.0.0.1", port 5432 2017-10-21 22:38:12.622 JST [12521] LOG: listening on Unix socket "/tmp/.s.PGSQL.5432" 2017-10-21 22:38:13.032 JST [12521] LOG: redirecting log output to logging collector process 2017-10-21 22:38:13.032 JST [12521] HINT: Future log output will appear in directory "log". . done server started
以上