使用PostgreSQL,在流复制环境下,备用数据库会出现报错,信息类似如下所示:
FATAL: could not receive data from WAL stream
这表示备用服务器上的流复制的接收进程已经终止,因为它无法从到主服务器的连接中再传输任何更改。
问题原因
通常,当主节点服务器和备用节点服务器之间出现网络中断时,会出现此类报错。
在出现此类事件之后,由于备用服务器上的流复制的接收进程已经终止。主服务器将重试连接,如果重试过程连续失败,它将切换回归档恢复。
解决方案
检查主服务器和备用服务器之间的底层网络连接。如果连接按预期工作,不是网络连接的问题,另一种可能的原因是由于主服务器上的负载较高。