快速设置
首先在postgresql.conf中设置配置选项:
wal_level = logical
对于一个基础设置来说,其他所需的设置使用默认值就足够了。
需要调整pg_hba.conf以允许复制(这里的值取决于实际的网络配置以及用于连接的用户):
host all repuser 0.0.0.0/0 sha256
然后在发布者数据库上:(创建发布的命令详见CREATE PUBLICATION)
CREATE PUBLICATION mypub FOR TABLE users, departments;
并且在订阅者数据库上:(创建订阅的命令详见CREATE SUBSCRIPTION)
CREATE SUBSCRIPTION mysub CONNECTION 'dbname=foo host=bar user=repuser' PUBLICATION mypub;
上面的语句将开始复制过程,会先同步表users以及departments的初始数据,然后开始复制对那些表的增量更改。
后续还可以修改发布,例如添加或删除发布表:(修改发布的命令详见ALTER PUBLICATION)
ALTER PUBLICATION mypub ADD TABLE new_tbl;
添加发布表之后需要在订阅者数据库上执行刷新操作:(修改订阅的命令详见ALTER SUBSCRIPTION)
ALTER SUBSCRIPTION mysub REFRESH PUBLICATION;
在发布者数据库上删除发布:(删除发布的命令详见DROP PUBLICATION)
DROP PUBLICATION mypub;
SQL 复制 全屏
在订阅者数据库上删除订阅:(删除订阅的命令详见DROP SUBSCRIPTION)
DROP SUBSCRIPTION mysub;
SQL 复制 全屏