SQL Server 2000/2005标识列+复制
我已经看了一些资料,只是想澄清一下,并得到一个意见 首先,为了完全避免任何问题,我们可以不用麻烦使用标识列作为主键,而是让它们自己生成,并让这些值以两种方式复制,假定它们在任何创建时间都是唯一的 出于这个问题的目的,我谈论的是解决全局访问问题的两种或多种复制方式,我们有标识列 现在我们正在设置事务复制,两个数据库应该相互复制 据我所知,您为每个数据库服务器分配了一系列种子值,它将使用这些值,您知道这是唯一的原因,因为您给出的范围不会交叉。那么,这是否意味着在复制过程中,这些值会插入到seed列中 因此,如果在每台服务器插入10行后将范围1-10和11-20分配给2台服务器,那么这两个数据库中都会有种子1-20?有一个选项可应用于标识列、触发器和其他约束 以你为例,, server1将为1-10种子,但只接受复制的11-20 设置种子的两种方法: 或者:将种子/增量设置为NOT,以便像这样进行复制 种子1,增量2 种子2,增量2 种子-1,增量-2 种子-2,增量-2 种子100000001,增量2 种子100000002,增量2 种子-100000002,增量-2 种子-100000001,增量-2 这将为8台服务器提供500000000台服务器 或: 添加名为ServerID的第二列以提供复合键,不用于ID列的复制 例如,tinyint可以扩展到256台服务器,每台服务器2^32行 无论哪种方式都有效…有一个选项可以应用于标识列、触发器和其他约束 以你为例,, server1将为1-10种子,但只接受复制的11-20 设置种子的两种方法: 或者:将种子/增量设置为NOT,以便像这样进行复制 种子1,增量2 种子2,增量2 种子-1,增量-2 种子-2,增量-2 种子100000001,增量2 种子100000002,增量2 种子-100000002,增量-2 种子-100000001,增量-2 这将为8台服务器提供500000000台服务器 或: 添加名为ServerID的第二列以提供复合键,不用于ID列的复制 例如,tinyint可以扩展到256台服务器,每台服务器2^32行 无论哪种方法都有效SQL Server 2000/2005标识列+复制,sql,sql-server-2005,sql-server-2000,replication,Sql,Sql Server 2005,Sql Server 2000,Replication,我已经看了一些资料,只是想澄清一下,并得到一个意见 首先,为了完全避免任何问题,我们可以不用麻烦使用标识列作为主键,而是让它们自己生成,并让这些值以两种方式复制,假定它们在任何创建时间都是唯一的 出于这个问题的目的,我谈论的是解决全局访问问题的两种或多种复制方式,我们有标识列 现在我们正在设置事务复制,两个数据库应该相互复制 据我所知,您为每个数据库服务器分配了一系列种子值,它将使用这些值,您知道这是唯一的原因,因为您给出的范围不会交叉。那么,这是否意味着在复制过程中,这些值会插入到seed列中