我要复制 1600 万条记录。只想问一下逻辑复制的初始阶段:
- 我需要先将初始表从发布者复制到订阅者吗?还是由订阅处理?不知道如果被复制过程处理的话要多久...
- 在这里和其他一些网站,https://www.enterprisedb.com/postgres-tutorials/logical-replication-postgresql-explained,上面写着“......产生多个表同步工作者”我怎样才能产生多个表同步工作者?它是哪个参数?我读过的文章都没有提到设置同步工作者的参数
谢谢
在 Ubuntu 上运行的 Postgres 12
重新 1)
不,你不需要做任何事情。创建订阅后,Postgres 将复制数据。如果您愿意,可以通过
with (copy_data = false)
在创建订阅时使用来阻止初始副本。重新 2)
然后,逻辑复制的后台进程数量不是每个订阅控制的,而是系统范围内的订阅者通过
max_logical_replication_workers
和max_sync_workers_per_subscription
。但是,对于单个表,只会使用单个工作人员。
因此,增加
max_sync_workers_per_subscription
只会影响并行同步的表数量,而不影响每个表的工作人员数量。