博客
关于我
postgresql 主从配置_生产环境postgresql主从环境配置
阅读量:795 次
发布时间:2023-03-03

本文共 2355 字,大约阅读时间需要 7 分钟。

PostgreSQL主从服务器配置指南

1. 安装软件并配置环境变量

主从服务器

安装PostgreSQL

# yum install postgresql -y# yum install postgresql-server -y

创建数据存储目录

# mkdir /data/pg_data# chown postgres:postgres /data/pg_data

配置环境变量

# vi /etc/profileexport PGDATA=/data/pg_data# source /etc/profile

2. 初始化数据库并启动服务

初始化数据库

# initdb -D /data/pg_data

启动数据库服务

# su postgresbash-4.2$ pg_ctl -D /data/pg_data startbash-4.2$ exit

设置开机启动

# vi /etc/rc.d/rc.local/usr/bin/postgres -D /data/pg_data

3. 创建同步用户

创建Replication用户

# su postgresbash-4.2$ psqlpostgres=# create role repuser login replication encrypted password 'password123';postgres=# \q

4. 配置PostgreSQL配置文件

修改pg_hba.conf

# vi /data/pg_data/pg_hba.confhost replication repuser 192.168.11.0/8 md5host all all 192.168.11.0/8 trust

修改postgresql.conf

# vi /data/pg_data/postgresql.conflisten_addresses = '192.168.11.131'wal_level = hot_standbymax_wal_senders= 6wal_keep_segments = 10240max_connections = 512archive_mode = onarchive_command = 'cp %p /data/pg_data/pg_archive/%f'

创建archive目录

# mkdir /data/pg_data/pg_archive

重新加载配置

# pg_ctl -D /data/pg_data reload

5. 从服务器配置

配置recovery.conf

# cp /usr/share/pgsql/recovery.conf.sample /data/pg_data/recovery.conf# vi /data/pg_data/recovery.confstandby_mode = onprimary_conninfo = 'host=192.168.11.131 port=5432 user=repuser password=password123 keepalives_idle=60'

修改postgresql.conf

# vi /data/pg_data/postgresql.conflisten_addresses = '192.168.11.132'wal_level = hot_standbymax_connections = 1000hot_standby = onmax_standby_streaming_delay = 30swal_receiver_status_interval = 10shot_standby_feedback = on

启动服务

# chmod 700 /data/pg_data# vi /etc/rc.d/rc.localsu postgres -c '/usr/bin/postgres -D /data/pg_data'

6. 验证配置

主服务器验证

# su postgresbash-4.2$ psqlpostgres=# select client_addr,sync_state from pg_stat_replication;client_addr | sync_state--------------+------------192.168.11.132 | async

从服务器验证

# su postgresbash-4.2$ psqlpostgres=# \l

7. 创建数据库并设置权限

创建数据库

postgres=# create database pgdata owner pgone;

设置权限

postgres=# grant all privileges on database pgdata to pgone;

8. 设置本地和远程登录密码

修改PostgreSQL密码

# su postgresbash-4.2$ psqlpostgres=# alter user postgres with password 'password321';

修改pg_hba.conf

# vi /data/pg_data/pg_hba.conflocal all all all all 127.0.0.1/32 trusthost all all 192.168.11.0/24 md5

重新加载配置

# pg_ctl -D /data/pg_data reload

9. 注意事项

  • 确保/data/pg_data目录权限正确
  • 定期备份数据库
  • 配置日志旋转策略
  • 建议使用SSL连接

转载地址:http://wixfk.baihongyu.com/

你可能感兴趣的文章
SpringBoot中集成阿里开源缓存访问框架JetCache实现声明式实例和方法缓存
查看>>
pom.xml中提示web.xml is missing and <failonmissingw>...
查看>>
Pomelo开发中Web客户端开发API简介
查看>>
QT教程2:QT5的体系构架
查看>>
PON架构(全光网络)
查看>>
PoolingHttpClientConnectionManager原理剖析
查看>>
QT教程1:ubuntu18.04安装QT5
查看>>
POP-一个点击带有放大还原的动画效果
查看>>
POP3 协议在计算机网络中的优缺点
查看>>
qt批量操作同类型控件
查看>>
Portaudio笔记-WASAPI
查看>>
position:fixed失效情况
查看>>
Qt开发笔记:QGLWidget、QOpenGLWidget详解及区别
查看>>
Position属性四个值:static、fixed、absolute和relative的区别和用法
查看>>
POSIX thread编程中关于临界区内条件变量的分析
查看>>
POSIX与程序可移植性
查看>>
posix多线程有感--自旋锁
查看>>
SpringBoot中集成海康威视SDK实现布防报警数据上传/交通违章图片上传并在linux上部署(附示例代码资源)
查看>>
POSIX标准和XSI扩展
查看>>
post install error,please remove node_moules before retry
查看>>