首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >postgreSQL 9.3流复制延迟

postgreSQL 9.3流复制延迟
EN

Database Administration用户
提问于 2014-05-08 12:45:35
回答 3查看 3.8K关注 0票数 3

我在私有1Gb局域网上的两个postgreSQL 9.3服务器之间运行一个相当简单的WAL流复制设置,但最近我注意到复制延迟越来越大:

代码语言:javascript
复制
# SELECT extract(epoch from now() - pg_last_xact_replay_timestamp()) AS slave_lag;
slave_lag 
-----------
5.50896

服务器并不特别忙,所以我想知道我能做些什么来调查这个问题,或者可能修复它。

EN

回答 3

Database Administration用户

发布于 2014-05-08 21:11:58

你试过看:

代码语言:javascript
复制
SELECT
     CASE
          WHEN pg_last_xlog_receive_location() = pg_last_xlog_replay_location() THEN 0
          ELSE EXTRACT (EPOCH FROM now() - pg_last_xact_replay_timestamp())::INTEGER
     END
AS replication_lag;

这里的想法是,如果两个服务器都是同步的,那么就没有延迟。如果它们不同步,则显示延迟。

这里的一个潜在问题是,如果PostgreSQL复制停止,这将不能正常工作,因此您需要通过其他机制定期检查是否正在运行复制。

票数 2
EN

Database Administration用户

发布于 2014-05-08 15:16:42

在非繁忙的服务器上,该值将不会反映您希望看到的数字。它的字面意思是“最后一次有东西被推给我是在5.50896秒前”。由于您的服务器不忙,这很可能是您的主服务器上最后一次提交,而不是该从服务器延迟。

票数 1
EN

Database Administration用户

发布于 2015-01-22 18:07:55

我相信这种差异很可能是由于每个服务器上的时钟不同造成的。

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

https://dba.stackexchange.com/questions/64756

复制
相关文章

相似问题

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