PostgreSQL使用 pg_basebackup 搭建流复制环境案例.docxVIP

  • 21
  • 0
  • 约1万字
  • 约 16页
  • 2017-06-11 发布于湖北
  • 举报

PostgreSQL使用 pg_basebackup 搭建流复制环境案例.docx

一环境信息系统: ? Red Hat Enterprise Linux Server release 6.7版本: ? PostgreSQL 9.4主库IP: 10.3.2.101 ?主机名:postgres1备库IP: 10.3.2.102 ?主机名:postgres2备注: PostgreSQL 安装略。备库可以只装数据库,不初始化数据库二主库上操作--2.1 创建流复制用户CREATE USER repuser replication LOGIN CONNECTION LIMIT 5 ENCRYPTED PASSWORD 888888;--2.2 设置 pg_hba.conf,添加以下host all all 0.0.0.0/0 md5host ? replication ? ? repuser ? ? ? ?10.3.2.102/32 ? ? ? ? md5??--2.3 设置主库 postgresql.conf?#checkpoint_segments = 16archive_mode = onarchive_command = /bin/datemax_wal_senders = 3#wal_keep_segments = 16?wal_level = hot_standbyhot_standby = on?备注:仅列出主要参数,其它参数根据实际情况设置。max_wal_senders是Slave库的节点数,有多少个slave库就设多少。wal_level是write ahead log参数值,设置流复制务必将此值更新成hot_standby。max_wal_senders是Slave库的节点数,有多少个slave库就设多少,wal_level是write ahead log参数值,设置流复制务必将此值更新成hot_standbywal_keep_segments默认值是16,是PG_XLOG下的日志文件数相关参数archive也可以选择关闭,归档是定时恢复用的,流复制不是必须的修改后记得重启数据库$pg_ctl stop -m fast ?$pg_ctl start -D $PGDATA或 pg_ctl -D $PGDATA -l /rasdis/pgdata/pg.log start##指定输出日志到pg.log--2.4 重载配置文件(如果数据库服务已启动可以使用该命令)?[pg93@redhatB ~]$ pg_ctl reload -D $PGDATAserver signaled三备库上操作--3.1基础备份复制到备库服务器登陆备库服务器,运行如下命令从主库复制文件。如果备库/rasdis/pgdata目录有文件先需要删除。pg_basebackup -D $PGDATA -F p -h masterdb -p masterdb_port -U repuser –W如:pg_basebackup -D $PGDATA -F p -h 10.3.2.101 -p 5432 -U repuser –W注:以上命令会遇到wal日志无法重定向问题,需要执行$pg_resetxlog -f?/opt/postgres9-1/data重置预写日志下回重新配置时使用以下命令试下:pg_basebackup -D /rasdis/pgdata -F p -X s -v -P -h 10.3.2.101 -p 5432 -U repuser或pg_basebackup -D $PGDATA -F p -X stream -v -P -h 10.3.2.101 -p 5432 -U repuser--3.2:修改备库配置信息添加recovery.conf文件。$cp /rasdis/postgresql/share/recovery.conf.sample /rasdis/pgdata/recovery.conf $ vi recovery.conf? 修改以下参数standby_mode = onprimary_conninfo = host=10.3.2.101 port=5432 user=repuser password=888888 keepalives_idle=60#trigger_file = /rasdis/pgdata/postgresql.trigger.5432配置.pgpass文件。在home/rasdb下创建 .pgpass[rasdb@postgres2 ~]$ touch .pgpass[rasdb@postgres2 ~]$ vi .pgpass[pg93@redhat6 ~]$ cat .pgpass10.3

文档评论(0)

1亿VIP精品文档

相关文档