博客
关于我
postgresql 主从配置_生产环境postgresql主从环境配置
阅读量:804 次
发布时间: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/

你可能感兴趣的文章
python | fastFM,一个高级的 Python 库!
查看>>
python | feature_engine,一个实用的 Python 库!
查看>>
python | filelock,一个超酷的 Python 库!
查看>>
python | fire,一个强大的 Python 库!
查看>>
python | flanker,一个神奇的 Python 库!
查看>>
python | flower,一个强大的 Python 库!
查看>>
python | funcy,一个超强的 提供函数式编程工具 Python 库!
查看>>
python | ggplot,一个超强的 Python 库!
查看>>
python | grab,一个强大的 Python 库!
查看>>
python | gunicorn,一个非常实用的 Python 库!
查看>>
python | h5py,一个无敌的关于 HDF5 的 Python 库!
查看>>
python | huey,一个非常厉害的 任务调度 Python 库!
查看>>
python | hypothesis,一个有趣的 Python 库!
查看>>
python | Indico,一个超酷的 Python 库!
查看>>
python | isort,一个有趣的 自动整理导入语句 的Python 库!
查看>>
python | jinja,一个超酷的 Python 库!
查看>>
python | joblib,一个强大的 Python 库!
查看>>
python调用git bash_Python学习第70课-用Git Bash在命令行打开sublime
查看>>
python | jsonschema,一个实用的 验证 JSON 数据结构 Python 库!
查看>>
python课程的中期报告范文_课题研究中期总结报告范文
查看>>