postgresql主备配置步骤
主从上安装postgres相同步骤:
1. 查询已安装postgres
rpm -qa | grep postgres
卸载掉postgres:
rpm -e --nodeps postgresql95-contrib-9.5.3-2PGDG.rhel7.x86_64
rpm -e --nodeps postgresql95-devel-9.5.3-2PGDG.rhel7.x86_64
rpm -e --nodeps postgresql95-libs-9.5.3-2PGDG.rhel7.x86_64
rpm -e --nodeps postgresql95-server-9.5.3-2PGDG.rhel7.x86_64
rpm -e --nodeps postgresql95-9.5.3-2PGDG.rhel7.x86_64
2. 安装postgresql
rpm包
rpm -ivh postgresql95-*
3. mkdir -p /opt/pgsql/data
chown postgres /opt/pgsql
4. su - postgres initdb -D
/opt/pgsql/data
Or
/usr/pgsql-9.5/bin/postgresql95-setup
initdb
service postgresql-9.5 status
5. 添加环境变量:
vi /etc/profile
在最后加入:
export PGHOME=/usr/pgsql-9.5
export PGDATA=/opt/pgsql/data
export PATH=$PGHOME/bin:$PATH:/usr/local/pgpool/bin
export LANG=zh_CN.UTF-8
export PGPORT=5432
export PATH=/usr/pgsql-9.5/bin:$PATH
6. 添加开机启动:
$PGHOME/bin/pg_ctl start -l logfile -D $PGDATA
7. 启动postgressql:
pg_ctl -D /opt/pgsql/data/ -l logfile start
主(192.168.205.145):
1. 创建归档目录:mkdir /opt/pgsql/pg_archive
2. 修改postgres用户的密码:
su - postgres
psql postgres
alter user postgres with password 'postgres';
3. 配置pg_hba.conf:
vi /opt/pgsql/data/pg_hba.conf
在最后加入:
host all all 0.0.0.0/0 trust
host replication postgres 0.0.0.0/0 trust
4. 配置postgresql.conf:
vi /opt/pgsql/data/postgresql.conf
修改其中配置项:
listen_addresses = '*' # 监听所有IP
archive_mode = on
# 允许归档
archive_command = 'cp %p /opt/pgsql/pg_archive/%f' # 用该命令来归档logfile segment
wal_level = hot_standby
max_wal_senders = 32 # 这个设置了可以最多有几个流复制连接,差不多有几个从,就设置几个wal_keep_segments = 256 # 设置流复制保留的最多的xlog数目
wal_sender_timeout = 60s # 设置流复制主机发送数据的超时时间
max_connections = 100 # 这个设置要注意下,从库的max_connections必须要大于主库的
5. 重启pgsql服务:
pg_ctl stop -D /opt/pgsql/data
pg_ctl start -D /opt/pgsql/data
从(192.168.205.161):
1. 将主机节点拷贝数据到从机节点
su - postgres
rm -rf /opt/pgsql/data/* #先将data目录下的数据都清空
pg_basebackup -h 192.168.205.145 -U postgres -D /opt/pgsql/data -X stream -P # 从主机拷贝数据到从机(基础备份)
mkdir /opt/pgsql/pg_archive
2. 配置recovery.conf
cp /usr/pgsql-9.5/share/recovery.conf.sample /opt/pgsql/data/recovery.conf
vi /opt/pgsql/data/recovery.conf
修改配置:
standby_mode = on
# 说明该节点是从服务器
primary_conninfo = 'host=192.168.205.145 port=5432
user=postgres password=postgres' # 主服务器的信息以及连接的用户
recovery_target_timeline = 'latest'
3. 配置postgresql
vi /opt/pgsql/data/postgresql.conf
修改配置:
wal_level = hot_standby
max_connections = 1000 # 一般查多于写的应用从库的最大连接数要比较大
hot_standby = on # 说明这台机器不仅仅是用于数据归档,也用于数据查询
max_standby_streaming_delay = 30s # 数据流备份的最大延迟时间
wal_receiver_status_interval = 10s # 多久向主报告一次从的状态,当然从每次数据复制都会向主报告状态,这里只是设置最长的间隔时间
hot_standby_feedback = on # 如果有错误的数据复制,是否向主进行反馈
4. 重启pgsql服务:
pg_ctl stop -D /opt/pgsql/data
pg_ctl start -D /opt/pgsql/data
6. 在从机上测试主机
su - postgres
psql -h 192.168.205.145 -U postgres
验证主备同步状态:
ps aux | grep wal
主机上有 wal sender process 进程
从机上有 wal receiver process 进程
表示配置成功
相关文章
- ubuntu pycharm安装教程及配置环境变量
- java环境配置——cmd命令行输入java正常显示而javac则显示不是内部或者外部命令[通俗易懂]
- 使用nginx配置一个ip对应多个域名
- POSTGRESQL 15 从等待中被驱逐的JSON新功能,只能祈祷 PostgreSQL 16
- 【Android FFMPEG 开发】Android Studio 中 配置 FFMPEG 库最小兼容版本 ( undefined reference to 'atof' )
- 一步步教你Centos系统安装Postgresql 配置及环境变量配置详细步骤
- rman配置及rman常用命令操作
- mongodb3.2副本集配置详解大数据
- 查询深入探索PostgreSQL慢查询性能优化(postgresql慢)
- 用户PostgreSQL的新用户:创建步骤(postgresql新建)
- 性能调优优化PostgreSQL内核性能的必要之道(postgresql内核)
- 安装及使用PostgreSQL数据库安装与应用指南(postgresql数据库)
- PostgreSQL持续锁表:保证可靠性(postgresql锁表)
- PostgreSQL.conf配置文件详解(postgresql.conf)
- 访问MySQL 匿名访问权限配置指南(mysql匿名)
- PostgreSQL测试:深入了解数据库运行状况(postgresql测试)
- 快速搭建Linux网络环境:配置有效路由表(linux 配置路由表)
- 分析深入理解Redis配置源码分析(redis配置源码)
- Redis配置参数与优化探索(redis配置参数和优化)
- 简易指南Oracle12g配置搭建(oracle12g的配置)
- mysql5.5master-slave(Replication)主从配置