再谈谈数据库镜像之客户端重定向
这两天在讲数据库设计的时候,再一次提到了数据库镜像。其中也提到了数据库镜像对客户端其实不是完全透明的,这一点与群集有一些区别。
所谓不完全透明,就是说客户端程序还是要知道后端组成镜像拓扑的几台服务器的一些信息的。也就是说,主体服务器如果出现了问题,假设有见证服务器的话,会实现自动地故障转移(Failover),那么客户端程序就应该要知道镜像服务器的地址,否则再使用主体服务器来连接的话,自然会出现问题
关于数据库镜像的一些介绍,请参考微软官方文档
http://technet.microsoft.com/zh-cn/library/cc917680(en-us,loband).aspx
我这里再总结一下有关客户端重定向的一些知识
客户端连接字符串的设置
- SQLCLIENT
- Data Source=myServerAddress;Failover Partner=myMirrorServerAddress;Initial Catalog=myDataBase;Integrated Security=True;
- OLEDB
- Provider=SQLNCLI;Data Source=myServerAddress;Failover Partner=myMirrorServerAddress;Initial Catalog=myDataBase;Integrated Security=True;
- ODBC
- Driver={SQL Server Native Client 10.0};Server=myServerAddress;Failover_Partner=myMirrorServerAddress;Database=myDataBase;Trusted_Connection=yes;
更多连接字符串方面的资料,有兴趣的朋友也可以参考http://www.connectionstrings.com/sql-server-2005 。这个网站真的很酷,呵呵