2017年06月02日

PostgreSQL10-beta ソースからコンパイルしてインストールする CentOS7.3 (途中)

CentOS 7.3.1611 (64bit)

1. Firewall 5432 port をopen

firewall-cmd --add-port=5432/tcp --zone=public --permanent
firewall-cmd --reload              //firewalldのリロード

******CentOS6は
******vi /etc/sysconfig/iptables
******-A INPUT -m state --state NEW -m tcp -p tcp --dport 5432 -j ACCEPT
******/etc/init.d/iptables restart


2.
yum -y install gcc
yum -y install readline
yum -y install readline-devel
yum -y install zlib
yum -y install zlib-devel

3.
useradd postgres
passwd postgres


4.
chown -R postgres:postgres /home/postgres
chmod -R 700 /home/postgres
ls -ld  /home/postgres


5.

6.
ls
tar zxvf postgresql-10beta1.tar.gz
ls -d postgresql-10beta1

7.
mkdir /opt/postgresql10b1

8.
cd /usr/local/src/postgresql-10beta1
./configure --prefix=/opt/postgresql10b1


9.
make

10.
make install

11.
ls -l /opt/postgresql10b1

12.
chown -R postgres:postgres /opt/postgresql10b1
ls -l /opt/postgresql10b1

13.
vi /home/postgres/.bash_profile


15.
# .bash_profile

# Get the aliases and functions
if [ -f ~/.bashrc ]; then
    . ~/.bashrc
fi

# User specific environment and startup programs

PATH=$PATH:$HOME/bin

export PATH
-------------------------------------------------------------------------------追記
POSTGRES_HOME=/opt/postgresql10b1

PGBIN=$POSTGRES_HOME/bin

PGLIB=$POSTGRES_HOME/lib

PGDATA==$POSTGRES_HOME/data

LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$PGLIB

PGPATH=$PATH:$HOME/bin:$PGBIN

export PATH

export PGDATA

export LD_LIBRARY_PATH

export POSTGRES_HOME=/opt/postgresql10b1
export PGBIN=$POSTGRES_HOME/bin
export PGLIB=$POSTGRES_HOME/lib
export PGDATA=$POSTGRES_HOME/data
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$PGLIB
export PATH=$PGBIN:.:$PATHH
-------------------------------------------------------------------------------追記END

起動スクリプト


展開したPostgreSQLソース内にcontribディレクトリがあります。
contribディレクトリ内のstart-scriptsにlinuxというファイルが起動スクリプトの雛型になります。
このファイルをrootユーザで/etc/rc.d/init.d/にpostgresとファイル名を変更してコピーします。
インストール先は/opt/postgresq10b1 lなのでprefixに/opt/postgresql10b1を指定します。

cp /usr/local/src/postgresql-10beta1/contrib/start-scripts/linux etc/rc.d/init.d/postgres
vi  /etc/init.d/postgres

sudo gedit /etc/init.d/postgres
Screenshot from 2017-06-02 11-00-08.png
-------------------------------------------------------------------------------追記
# Installation prefix
prefix=/usr/local/pgsql
# Data directory
PGDATA="/usr/local/pgsql/data"
-------------------------------------------------------------------------------追記
Screenshot from 2017-06-02 11-04-22.png
# Installation prefix
prefix=/opt/postgresql10b1
# Data directory
PGDATA="/opt/postgresql10b1/data"
-------------------------------------------------------------------------------追記

chmod 755 /etc/init.d/postgres

chkconfig --add postgres
chkconfig --list | grep postgres
chkconfig postgres on


chkconfig sshd onに相当する自動起動の有効化はsystemctl enable postgres.serviceとなる。

su - postgres
env | grep PGDATA
initdb --encoding=UTF8 --no-locale
initdb --encoding=UTF8 --locale=C

Screenshot from 2017-06-02 11-15-46.png
exit;


service postgres start

[root@localhost ~]# su - postgres
[postgres@localhost ~]$ psql


posted by a23 at 10:27| Comment(0) | PostgreSQL
この記事へのコメント
コメントを書く
お名前:

メールアドレス:

ホームページアドレス:

コメント: