如何解决导致试图在Postgresql中实现复制的“不完整启动数据包”日志消息的问题?

我有两台运行Ubuntu 13.04和PostgreSQL 9.2的云服务器。

我主要使用这个博客文章来帮助我设置。 但是,要执行初始数据库转储到奴隶我使用pg_start_backup/pg_stop_backup战略在这个其他的博客文章中使用 。 我已经阅读了docs和postgres wiki。 我碰到了几个我能解决的问题,但是我无法摆脱这个糟糕的“数据库正在启动”的失败。

我不确定是否看到:

 cp: cannot stat /var/lib/postgresql/9.2/archive/00000001000000000000003A': No such file or directory 

consistent recover state reached之后是正常的还是第一个出现问题的迹象。 我the database is starting upthe database is starting up的searchthe database is starting upincomplete startup packet告诉我有什么东西在向从站发送空TCP数据包。 唯一的事情,即使知道奴隶是主人,所以我不知道为什么它发送空包…

有没有人与此合作,并有一个想法可能会出错?

postgreslogin从站看起来是这样的:

 2013-08-26 13:01:38 CDT LOG: entering standby mode 2013-08-26 13:01:38 CDT LOG: restored log file "000000010000000000000039" from archive 2013-08-26 13:01:38 CDT LOG: incomplete startup packet 2013-08-26 13:01:39 CDT LOG: redo starts at 0/39000020 2013-08-26 13:01:39 CDT LOG: consistent recovery state reached at 0/390000E0 cp: cannot stat '/var/lib/postgresql/9.2/archive/00000001000000000000003A': No such file or directory 2013-08-26 13:01:39 CDT LOG: streaming replication successfully connected to primary 2013-08-26 13:01:39 CDT FATAL: the database system is starting up 2013-08-26 13:01:39 CDT FATAL: the database system is starting up 2013-08-26 13:01:40 CDT FATAL: the database system is starting up 2013-08-26 13:01:40 CDT FATAL: the database system is starting up 2013-08-26 13:01:41 CDT FATAL: the database system is starting up 2013-08-26 13:01:42 CDT FATAL: the database system is starting up 2013-08-26 13:01:42 CDT FATAL: the database system is starting up 2013-08-26 13:01:43 CDT FATAL: the database system is starting up 2013-08-26 13:01:43 CDT FATAL: the database system is starting up 2013-08-26 13:01:44 CDT FATAL: the database system is starting up 2013-08-26 13:01:44 CDT FATAL: the database system is starting up 2013-08-26 13:01:44 CDT LOG: incomplete startup packet 2013-08-26 13:03:27 CDT FATAL: the database system is starting up 2013-08-26 13:03:27 CDT FATAL: the database system is starting up 2013-08-26 13:03:30 CDT FATAL: the database system is starting up 2013-08-26 13:03:30 CDT FATAL: the database system is starting up 

谢谢! 布拉德

您无法复制pg_stop_backup后的最后一个WAL归档文件。 如果要使用此方法,则需要设置WAL归档或手动复制WAL。

在9.2及更高版本中,使用pg_basebackup --xlog-method=stream执行一次性副本更容易。 这将通过复制协议以及基本备份复制事务日志,并自动处理pg_start_backuppg_stop_backup

请参阅pg_basebackup手册 。

标题中提到的“不完整的启动数据包”错误可能是不相关的,并且是由尝试从具有sslmode=prefer客户机到不支持SSL的服务器build立SSL连接的结果。