环境为:centos7+postgresql9.5
主机:192.168.135.139 hostname:localhost
备机:192.168.135.138 hostname:dragon
postgresql安装路径:/home/postgres/data
数据库安装:
1、安装postgresql9.5 在主机、备机上
yum安装:
root用户执行:
yum install https://download.postgresql.org/pub/repos/yum/9.5/redhat/rhel-7-x86_64/pgdg-centos95-9.5-3.noarch.rpm
yum install postgresql95
yum install postgresql95-server
2、初始化数据库
创建postgres用户,配置环境变量
postgres用户下vi .bash_pforile 添加
export PGHOME=/opt/psql
export PGDATA=~/data
export PATH=$PATH:$HOME/bin:$PGHOME/bin
mkdir data
cd data 执行initdb
4、配置主机数据库
1-创建psql用户,执行命令
psql
CREATE USER repuser REPLICATION LOGIN CONNECTION LIMIT 1 ENCRYPTED PASSWORD 'yourpassword';
用户:repuser 密码:repuser
2-cd到psql的安装目录,配置pg_hba.conf、postgresql.conf。
vi pg_hba.conf添加
host replication rep 192.168.135.138/32 md5
保存修改。(rep上一步新建的用户,192.168.135.138是备机的地址)
vi postgresql.conf以下信息
listen_addresses = 'localhost,192.168.135.139'
wal_level = 'hot_standby'
archive_mode = on
archive_command = 'cd .'
max_wal_senders = 1
hot_standby = on
保存修改。
执行systemctl restart postgresql,重启psql数据库。
5、配置备机数据库
1-如果数据库运行状态,先停掉数据库。执行 pg_ctl stop。
2-配置pg_hba.conf、postgresql.conf文件。
vi pg_hba.conf添加
host replication repuser 192.168.135.139/32 md5
保存修改。
配置postgresql.conf修改
listen_addresses = 'localhost,192.168.135.138'
wal_level = 'hot_standby'
archive_mode = on
archive_command = 'cd ./'
max_wal_senders = 1
hot_standby = on
保存修改。
6、配置
主机执行:rsync -cva --inplace --exclude=*pg_xlog* /home/postgres/data/ 192.168.135.139:/home/postgres/data
备机设置recovery.conf文件。
cp /opt/psql/share/postgresql/recovery.conf.sample recovery.conf
vi recovery.conf
启动主库、备库
主库:
备库:
7、测试
主机插入数据:
备机查看数据:
完。