注册 登录  
 加关注
   显示下一条  |  关闭
温馨提示!由于新浪微博认证机制调整,您的新浪微博帐号绑定已过期,请重新绑定!立即重新绑定新浪微博》  |  关闭

PostgreSQL 中文网

 
 
 

日志

 
 

PostgreSQL 流复制:archive_mode 参数设置问题  

2013-01-05 13:59:49|  分类: PG高可用性 |  标签: |举报 |字号 订阅

  下载LOFTER 我的照片书  |


     今天 PostgreSQL bbs 群里有人问到在做流复制环境时 archive_mode 的设置问题,
贴子的意思是:将 archive_mode 设置成 off 时,依然能搭建成功流复制环境,而网上
大多数资料都是将该参数设置成 on。
 
 
      的确,在配置 PostgreSQL 流复制时,我们通常开启 archive_mode,但并不一定会配
置 archive_command shell 脚本归档 WAL,因为 PostgreSQL 的归档非常大,而且保留归
档 WAL 需要很大的存储空间,当然有条件的情况下建议开启并且设置保留策略。


       针对群里提出的问题,接下来测试下,版本 PostgreSQL 9.1.0,关于流复制的
搭建本文略,可以参考 http://francs3.blog.163.com/blog/static/40576727201108864230/
这里不同的是 pg 版本,但这影响不大,另外不同的是 archive_mode 参数设置成 off,并且
注释 archive_command 参数,分以下两种情况测试:


测试一:
     以开启 archive_mode 方式搭建流复制环境,搭建完成后更改主库,备库的 achive_mode
     参数为 off,并重启服务; 测试结果:流复制正常。
        
测试二:
     重新搭建流复制环境,并且搭建时关闭主库,备库的 archive_mode 参数(off)。
     测试结果:流复制正常。
     
    
结论
     根据以上测试,似乎说明在搭建流复制环境时,并不必须设置 archive_mode 参数为 on ,
很多资料在介绍搭建流复制环境时设置这个参数为 on ,可能是出于开启 WAL 归档更安全的原因,
因为在主库宕机并且较长时间不能恢复时,从库依然可以读取归档目录的 WAL,从而保证不丢数据;
另一方面,如果主库设置了较大的 wal_keep_segments ,也可以不用开启 archive_mode,因为
主库保留了足够的 WAL,从而大大降低了因从库所需要的 WAL 被主库覆盖而需要从归档去取 WAL
的情况。所以从这方面说,archive_mode 参数的设置与搭建流复制并没有直接关系。    


提示:
     对于比较繁忙的库,在搭建流复制从库时,建议主库设置较大的 wal_keep_segments 参数。

    
参考
http://www.postgresql.org/docs/9.1/static/runtime-config-wal.html#RUNTIME-CONFIG-WAL-ARCHIVING
http://francs3.blog.163.com/blog/static/40576727201108864230/
http://wiki.postgresql.org/wiki/Hot_Standby
http://deepakmurthy.wordpress.com/2011/06/03/postgresql-hot-standby-replication/

  评论这张
 
阅读(12601)| 评论(0)
推荐 转载

历史上的今天

在LOFTER的更多文章

评论

<#--最新日志,群博日志--> <#--推荐日志--> <#--引用记录--> <#--博主推荐--> <#--随机阅读--> <#--首页推荐--> <#--历史上的今天--> <#--被推荐日志--> <#--上一篇,下一篇--> <#-- 热度 --> <#-- 网易新闻广告 --> <#--右边模块结构--> <#--评论模块结构--> <#--引用模块结构--> <#--博主发起的投票-->
 
 
 
 
 
 
 
 
 
 
 
 
 
 

页脚

网易公司版权所有 ©1997-2016