Postgresql 序列数据和逻辑复制
据我所知,Postgres中的逻辑复制并不复制序列数据。假设我们有两台多主机博士后服务器Postgresql 序列数据和逻辑复制,postgresql,postgresql-10,postgresql-11,Postgresql,Postgresql 10,Postgresql 11,据我所知,Postgres中的逻辑复制并不复制序列数据。假设我们有两台多主机博士后服务器 server1 test_table current sequence 100 server2 test_table current sequence 90 如果server1宕机,server2将接管写操作,当它尝试插入序列为90的行时会发生什么情况?因为server1已经插入了一个id为90的行。有哪些解决方法?设置这两个序列,使它们不会冲突 例如,在两个序列上使用递增2,让服务器1给出奇数,服务器
server1
test_table
current sequence 100
server2
test_table
current sequence 90
如果server1宕机,server2将接管写操作,当它尝试插入序列为90的行时会发生什么情况?因为server1已经插入了一个id为90的行。有哪些解决方法?设置这两个序列,使它们不会冲突
例如,在两个序列上使用
递增2
,让服务器1给出奇数,服务器2给出偶数。谢谢,这是一个很好的选择。您知道是否可以使用物理复制进行多主机同步吗?或者,如果我想要同步多主机,我唯一的选择是逻辑复制?物理是唯一的主从,因为它保留了操作顺序。逻辑可以是多主的。如果我们计划有一个5服务器集群呢?您如何看待使用UUID而不是序列?您还不能将多主机复制与PostgreSQL逻辑复制结合起来。实际上,无论如何,通常最好避免这种情况,因为随后的复制冲突将破坏任何不是专门为其设计的应用程序。@Laurenzal如果你是对的,我的印象是它确实支持它,我必须研究主/备故障切换