我有一个 postgresql 9.2 流复制设置。从站似乎正在从主站获取更新并且是同步的。我已经通过查看 pg_xlog 目录和进程列表来验证它。
$ ps辅助| grep 'postgres.*rec' postgres 26349 2.3 42.9 38814656 18604176 ? Ss Sep20 24:06 postgres:启动过程正在恢复 000000010000026E00000073 postgres 26372 4.9 0.1 38959108 78880 ? Ss Sep20 51:27 postgres:wal 接收器进程流式传输 26E/731E05F0
从服务器上的启动日志看起来也不错。
2013-09-21 03:02:38 UTC 日志:数据库系统在 2013-09-21 03:02:32 UTC 关闭以恢复 2013-09-21 03:02:38 UTC LOG:启动数据包不完整 2013-09-21 03:02:38 UTC 致命:数据库系统正在启动 2013-09-21 03:02:38 UTC 日志:进入待机模式 2013-09-21 03:02:38 UTC 日志:重做开始于 26E/71723BB8 2013-09-21 03:02:39 UTC 致命:数据库系统正在启动 2013-09-21 03:02:39 UTC 日志:在 26E/75059C90 达到一致的恢复状态 2013-09-21 03:02:39 UTC 日志:无效的 xlog 切换记录在 26E/75059E98 2013-09-21 03:02:39 UTC 日志:数据库系统已准备好接受只读连接 2013-09-21 03:02:39 UTC 日志:流复制成功连接到主
让我担心的是pg_stat_replication
主人的桌子。它显示有一个客户端连接,但没有显示更多内容。
存档=> 从 pg_stat_replication 中选择 *; 进程号 | 使用sysid | 用户名 | 应用程序名称 | 客户地址 | 客户端主机名 | 客户端端口 | 后端开始 | 状态 | 发送位置 | 写位置 | 冲洗位置 | 重播位置 | 同步优先级 | 同步状态 -----+----------+------------+------------------+- ------------+------+-------------+------ ----------+-------+---------------+--------------- -+----------------+-----------------+------------- --+------------ 999 | 16384 | 复制器 | 接收器 | | | | | | | | | | | (1 行)
这是预期的行为吗?我记得我在一段时间前进行测试运行时看到了 client_addr、send_location、replay_location 等的值。有什么我想念的吗?
根据提示,您似乎没有以超级用户身份连接。要查看有关连接的地址信息,您必须以超级用户身份连接。