博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
PostgreSQL 10.1 手册_部分 III. 服务器管理_第 31 章 逻辑复制_31.1. 发布
阅读量:5752 次
发布时间:2019-06-18

本文共 745 字,大约阅读时间需要 2 分钟。

31.1. 发布

可以在任何物理复制主机上定义发布。 定义发布的节点称为发布者。 发布是从一个表或一组表中生成的一组更改,也可能被描述为更改集或复制集。 每个发布只存在于一个数据库中。

发布与模式不同,不影响表格的访问方式。如果需要,每张表可以添加到多个发布。 发布目前可能只包含表。对象必须显式添加, 除非为ALL TABLES创建了一个发布。

发布可以选择将它们所产生的改变限制在INSERT, UPDATEDELETE的任意组合上, 类似于触发器被特定事件类型触发。默认情况下,复制所有操作类型。

已发布的表格必须配置一个副本标识以便能够复制 UPDATEDELETE操作, 这样可以在订阅者端识别适当的行来更新或删除。默认情况下,这是主键, 如果有的话。另外唯一的索引(有一些额外的要求)也可以被设置为副本标识。 如果表没有任何合适的键,那么它可以设置为复制标识full, 这意味着整个行成为键。但是,这是非常低效的, 并且只能在没有其他可能的解决方案时用作后备。 如果发布者端设置了除full之外的副本标识, 则还必须在订阅者端设置包含相同或更少列的副本标识。 有关如何设置副本标识的详细信息,请参见。 如果没有副本标识的表被添加到复制UPDATEDELETE 操作的发布中,则后续的UPDATEDELETE 操作会在发布者上造成错误。无视副本标识,INSERT操作都可以进行。

每个发布可以有多个订阅者。

使用命令创建发布,稍后可以使用对应的命令修改或删除。

使用可以动态的添加或删除单个表。 ADD TABLEDROP TABLE操作都是事务型的; 所以一旦事务提交,表就会启动或停止在正确的快照上复制。

本文转自PostgreSQL中文社区,原文链接:

转载地址:http://sjukx.baihongyu.com/

你可能感兴趣的文章
上云就是这么简单——阿里云10分钟快速入门
查看>>
MFC多线程的创建,包括工作线程和用户界面线程
查看>>
我的友情链接
查看>>
FreeNAS8 ISCSI target & initiator for linux/windows
查看>>
PostgreSQL数据库集群初始化
查看>>
++重载
查看>>
Rainbond 5.0.4版本发布-做最好用的云应用操作系统
查看>>
nodejs 完成mqtt服务端
查看>>
sql server 触发器
查看>>
[工具]前端自动化工具grunt+bower+yoman
查看>>
关于完成生鲜电商项目后的一点总结
查看>>
noip2012 普及组
查看>>
第二阶段 铁大Facebook——十天冲刺(10)
查看>>
Java判断是否为垃圾_Java GC如何判断对象是否为垃圾
查看>>
多项式前k项和java_多项式朴素贝叶斯softmax改变
查看>>
java数组只能交换0下标和n_编程练习-只用0交换排序数组
查看>>
centos7安装mysql视频教程_centos7安装mysql(完整)
查看>>
php图片赋值,php如何优雅地赋值
查看>>
【探索HTML5第二弹01】HTML5的前世今生以及来世
查看>>
Failed to connect to remote VM. Connection refused. Connection refused: connect
查看>>