前提环境
role |
master |
slave |
host |
Pg1 |
Pg2 |
ip |
192.168.1.11 |
192.168.1.12 |
Pg-version |
10.5 |
10.5 |
搭建主机
1.二进制安装postgresql10.5数据库
[root@pg1 ~]# tar -zxvf postgresql-10.5.tar.gz
[root@pg1 ~]# cd postgresql-10.5/
[root@pg1 postgresql-10.5]# mkdir /usr/local/postgresql
[root@pg1 postgresql-10.5]# yum install -y zlib-devel readline-devel gcc python-devel perl-ExtUtils-Embed
[root@pg1 postgresql-10.5]# ./configure --prefix=/usr/local/postgresql --with-python --with-perl
[root@pg1 postgresql-10.5]# make && make install
为postgres单独创建用户和文件夹,降权使得用户更加安全
[root@pg1 postgresql-10.5]# useradd postgres
[root@pg1 postgresql-10.5]# mkdir -p /home/pgdata
[root@pg1 postgresql-10.5]# chown -R postgres.postgres /home/pgdata
[root@pg1 postgresql-10.5]# vim /etc/profile
export PATH=/usr/local/postgresql/bin:$PATH
export LD_LIBRARY_PATH=/usr/local/postgresql/lib
[root@pg1 postgresql-10.5]# source /etc/profile
[root@pg1 postgresql-10.5]# vim /etc/hosts
192.168.1.11 pg1
192.168.1.12 pg2
[root@pg1 postgresql-10.5]# chown -R postgres.postgres /usr/local/postgresql/
[root@pg1 postgresql-10.5]# su postgres
[postgres@pg1 postgresql-10.5]$ vim /home/postgres/.bash_profile
export PGHOME=/usr/local/postgresql
export PGDATA=/home/pgdata
export PGHOST=/tmp
export PATH="$HOME/bin:$HOME/.local/bin:$PATH:$PGHOME/bin"
export MANPATH=$PGHOME/share/man:$MANPATH
export LANG=en_US.utf8
export DATE=`date +"%Y-%m-%d %H:%M:%S"`
export LD_LIBRARY_PATH=$PGHOME/lib:$LD_LIBRARY_PATH
[postgres@pg1 postgresql-10.5]$ source /home/postgres/.bash_profile
[postgres@pg1 postgresql-10.5]$ /usr/local/postgresql/bin/initdb -D /home/pgdata/
could not change directory to "/root/postgresql-10.5": Permission denied
The files belonging to this database system will be owned by user "postgres".
This user must also own the server process.
The database cluster will be initialized with locale "en_US.utf8".