该错误通常发生在AWS RDS实例出现主副本复制问题时。问题可能是由于缺少所需扩展引起的,因此需要在主数据库和副本数据库上安装pglogical扩展。
以下是在主数据库和副本数据库上安装pglogical扩展的示例SQL代码:
在主数据库中:
CREATE EXTENSION IF NOT EXISTS pglogical;
SELECT pglogical.create_node( node_name := 'replica_node', dsn := 'host=<副本数据库地址> port=5432 dbname=<副本数据库名> user=<副本数据库用户名> password=<副本数据库密码>' );
在副本数据库中:
CREATE EXTENSION IF NOT EXISTS pglogical; SELECT pglogical.create_replication_set('replication_set_1'); SELECT pglogical.alter_subscription_add_replication_set('default', 'replication_set_1');
以上代码将在主数据库中创建一个新的复制节点,并在副本数据库中创建一个名为“replication_set_1” 的新复制集,并将其添加到默认订阅中。
完成以上步骤后,您应该能够解决AWS复制失败 - 无法访问文件“pglogical”的问题。