SQLSERVER复制订阅中的数据库版本选择
设想一种场景:
两台发布SQL:数据库版本分别是SQL2005,SQL2008
一台分发SQL: 数据库版本SQL2005
一台订阅SQL: 版本待定
问 在这种情况下订阅服务器应该采用哪种版本的SQLSERVER? 2005还是2008?
这里假定一个前题:发布上的SQL2008并没有用到SQL2008的新特性也就是说SQL05上也能跑(兼容级别90)。否则这个问题就失去了可讨论性
如果你不加思索的回答SQL2008.那么你和我一样属于激进派
当然基本上这个答案也是正确的
但是需要补充几点:
1.选择SQL08,意味着你的订阅将不能从发布库上创建(当然这个可以绕开)
2.选择SQL08,意味着分发服务器不能提供对SQL08发布库的分发作用(这个影响很大)
所以如果能升级分发 一定要分发
记住:在发布-分发-订阅三者关系里,版本尽量一致。如果版本不一致 确保分发版本最高
结合这个案例:
A.最好的方法:升级分发到SQL2008,订阅库选SQL2008
B如分发不能升级,想共用一个分发的话订阅库选SQL2005
C如分发不能升级,不想共用一个分发的话订阅库选SQL2008