Raf*_*sta 9 postgresql ruby-on-rails postgresql-11
我正在两个不同应用程序的数据库之间创建逻辑复制。然而,在开发环境中,我的数据库保留在同一个 postgres docker 容器中。
我的应用程序使用 Rails,因此我创建了一个迁移来创建来自发布者的订阅。但当我运行它时,它永远有效。如果我创建另一个容器并将数据库分开,订阅就会膨胀。
无论如何,我可以在同一个容器中运行它吗?
jja*_*nes 13
看起来您已经遇到了文档中详细说明的警告,并且需要遵循其中描述的两步过程:
仅当复制槽不是作为同一命令的一部分创建时,创建连接到同一数据库集群的订阅(例如,在同一集群中的数据库之间进行复制或在同一数据库内进行复制)才会成功。否则,CREATE SUBSCRIPTION 调用将挂起。要实现此目的,请单独创建复制槽(使用插件名称 pgoutput 的函数 pg_create_logic_replication_slot),并使用参数 create_slot = false 创建订阅。
归档时间:
6 年,8 月 前
查看次数:
2181 次
最近记录: