PostgreSQL到AWS Aurora PostgreSQL逻辑复制连接失败求助
逻辑复制订阅连接Aurora失败的可能原因
错误信息
ERROR: could not connect to the publisher: could not connect to server: No route to host Is the server running on host "my-db.dfsfdsfsdfd.us-east-1.rds.amazonaws.com" (10.2.5.7) and accepting TCP/IP connections on port 5432?
排查方向
端点使用错误:逻辑复制要求订阅端连接到发布端的可写入主实例。若误用了Aurora的只读端点(而非写入端点)作为目标/发布端地址,会因只读实例不支持复制连接导致路由失败。确认你使用的是Aurora集群的主实例端点(而非只读端点)。
Aurora参数组未生效:虽然已将
rds.logical_replication设为1,但需验证该参数组是否关联到Aurora主实例,且主实例已完成必要重启(部分参数修改需重启生效)。在Aurora主实例执行以下命令确认参数状态:SHOW rds.logical_replication;返回结果应为
on,否则参数未正确应用。VPC路由或网络细节限制:即使同VPC同子网,Aurora集群可能存在隐性网络限制:
- 检查Aurora所在VPC的路由表,确认无拒绝PostgreSQL实例子网到Aurora主实例IP的规则;
- 若Aurora启用了VPC端点服务,需确保PostgreSQL实例所在子网已允许访问该端点。
数据库层面权限不足:RDS权限策略充足不代表数据库内部权限达标:
- 若PostgreSQL是发布端,需给订阅端(Aurora)的连接用户授予
REPLICATION权限,以及复制对象的SELECT权限; - 若误将Aurora设为发布端,需在Aurora上创建发布者,并给连接用户配置相应复制权限。
- 若PostgreSQL是发布端,需给订阅端(Aurora)的连接用户授予
Aurora连接资源耗尽:检查Aurora主实例的
Database Connections监控指标,若达到实例规格的最大连接数,会拒绝新的连接请求,表现为路由失败。
内容的提问来源于stack exchange,提问作者Peter
相关产品推荐
相关产品推荐

