PostgresSQL主从搭建

  

由于工作需要,最近开始接触各种数据库,并尝试各种数据库产品的高可用方案。

今天分享的是postgresSQL的主从配置,其实还是蛮简单的,跟随本文的步骤,保证能实现PG主从的搭建。


1。安装环境

192.168.0.136 主库   192.168.0.160 从库   端口:5432   USR: postgres

2。主库已经运行一段时间,检查主库的版本,保证主从数据库的版本相同。

#,psql ——版本   psql  (PostgreSQL) 9.4.11      #,rpm  qa | grep  postgres   postgresql94-libs-9.4.11-1PGDG.rhel6.x86_64   postgresql94-server-9.4.11-1PGDG.rhel6.x86_64   postgresql94-9.4.11-1PGDG.rhel6.x86_64

3。在从库上安装相同版本的软件

检查安装情况,已经安装和主相同的软件版本

#,rpm  qa | grep  postgres   postgresql94-libs-9.4.11-1PGDG.rhel6.x86_64   postgresql94-server-9.4.11-1PGDG.rhel6.x86_64   postgresql94-9.4.11-1PGDG.rhel6.x86_64

4。查询主库的数据库位置

#,su 作用;postgres   美元,echo  PGDATA美元/var/lib/pgsql/9.4/data   美元,cd /var/lib/pgsql/9.4/数据   美元,ls   base ,,, pg_clog ,,,,, pg_hba.conf ,,, pg_log ,,,,, pg_multixact    pg_replslot , pg_snapshots , pg_stat_tmp , pg_tblspc ,,, PG_VERSION ,   postgresql.auto.conf , postmaster.opts  global , pg_dynshmem , pg_ident.conf ,   ,pg_logical  pg_notify ,,,, pg_serial ,,, pg_stat ,,,,,, pg_subtrans ,   ,pg_twophase  pg_xlog ,,,, postgresql.conf ,,,,,邮政局长。pid

确认配置文件位置

postgres=#, show  config_file;   config_file 才能,,,,,,,,,,,,,,,   -----------------------------------------   ,/var/lib/pgsql/9.4/数据/postgresql。参看

查看数据文件目录

postgres=#, show  data_directory;   ,,,,data_directory ,,,,,   -------------------------   ,/var/lib/pgsql/9.4/数据

5。准备修改主库的参数文件,先查询一下pg_hba。配置已有的参数内容

,美元cat  pg_hba.conf | grep  -v “^ #”   local ,, all ,,,,,,,,,,,, all ,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,,同行   host ,,, all ,,,,,,,,,,,, all ,,,,,,,,,,,, 0.0.0.0/0 ,,,,,,,,,,,信任   host ,,, all ,,,,,,,,,,,, all ,,,,,,,,,,,,:: 1/128 ,,,,,,,,,,,,鉴别

6。在主库的pg_hba。会议中添加

,美元more  pg_hba.conf   host ,,, replication ,,,, replica ,,,, 192.168.0.160 ,,,,,,,,,,,,,,,, md5

这样,就设置了复制这个用户可以从192.168.0.160对应的网段进行流复制请求。


7。在主库给postgres设置密码,登录和备份权限。

psql美元   postgres #, CREATE  ROLE  replica  login  replication  encrypted  password “replica123”

8。修改postgresql。相依,注意设置下下面几个地方:

wal_level =, hot_standby ,,,,,, #,这个是设置主为细胞膜的主机   10 max_wal_senders =,,,,,,,,,,,, #,这个设置了可以最多有几个流复制连接,差不多有几个从,就设置几个   wal_keep_segments =, 256,,,,,,,, #,设置流复制保留的最多的xlog数目   时间=wal_sender_timeout  60 s ,,,,,, #,设置流复制主机发送数据的超时时间   max_connections =, 100,,,,,,,,,,, #,这个设置要注意下,从库的max_connections必须要大于主库的   archive_mode =,   archive_command =, ' cp  % p /var/lib/pgsql/9.4/归档/% f '

9。创建对应归档日志存放路径

mkdir  -p /var/lib/pgsql/9.4/归档/

10。重启主库,让配置生效

#,service  postgresql - 9.4,开始   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null   null

PostgresSQL主从搭建