首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >Postgres复制:不完整的启动数据包

Postgres复制:不完整的启动数据包
EN

Stack Overflow用户
提问于 2014-03-26 06:54:00
回答 2查看 14.2K关注 0票数 5

我最近配置了单主/从之间的PostgreSQL 9.3热备复制。

我今天再次检查了我的备用服务器,它看起来无法完成并在重启时退出恢复模式:

代码语言:javascript
复制
2014-03-25 22:36:07 UTC LOG:  entering standby mode
2014-03-25 22:36:07 UTC LOG:  incomplete startup packet
2014-03-25 22:36:07 UTC LOG:  redo starts at 7/E1091840
2014-03-25 22:36:07 UTC LOG:  consistent recovery state reached at 7/E10929C8
2014-03-25 22:36:07 UTC LOG:  record with zero length at 7/E10929C8
2014-03-25 22:36:07 UTC LOG:  started streaming WAL from primary at 7/E1000000 on timeline 1
2014-03-25 22:36:08 UTC FATAL:  the database system is starting up
2014-03-25 22:36:08 UTC FATAL:  the database system is starting up
2014-03-25 22:36:09 UTC FATAL:  the database system is starting up
... more ...
2014-03-25 22:36:13 UTC LOG:  incomplete startup packet

我尝试手动将WAL记录从主服务器复制到从服务器,但得到了相同的错误,所以我想知道是不是主服务器上的WAL记录有问题?

EN

回答 2

Stack Overflow用户

发布于 2014-07-02 11:44:33

我解决了和你一样的问题

代码语言:javascript
复制
 psql -c "select pg_start_backup('initial_backup');"
 rsync -cva --inplace --exclude=*pg_xlog* /var/lib/postgresql/9.1/main/ slave_IP_address:/var/lib/postgresql/9.1/main/
 psql -c "select pg_stop_backup();"

here is a good tutorial !!

票数 2
EN

Stack Overflow用户

发布于 2017-01-28 01:49:57

我在PostgreSQL 9.4上也遇到了同样的问题

原因是在我的系统中,postgresql.conf和pg_hba.conf位于/etc/postgresql中,所以在pg_startbackup期间它们没有从主服务器进入备用状态

因此,我在主服务器上设置了wal_level = hot_standby,在备用服务器上设置了默认wal_level = minimal。这将在log中生成相同的图片。

我的决定是在备用状态下修复postgresql.conf。在此之后,备用服务器启动正常,并表示它已准备好接受只读连接。

票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/22648029

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档