【发布时间】:2014-01-17 16:05:25
【问题描述】:
尝试创建针对 SQL Server 2012 高可用性组的“只读”意图连接字符串,遵循 this article,我得到:
System.ArgumentException:不支持关键字:'应用程序 意图'。在 System.Data.Common.DbConnectionOptions.ParseInternal(哈希表 可解析,字符串连接字符串,布尔构建链,哈希表 同义词,布尔 firstKey)
这是在 Windows 7 Pro 机器上,违背基于 SQL Server 2012 的高可用性组(已确认可使用“-ReadOnly”参数)。
有两篇关于引入“应用程序意图”的修补程序的 MS 知识库文章,但它们适用于框架版本 3.5 和 4。 我没有为 4.5 找到任何东西,所以我认为包含支持。 4.5 和 SQL Server Native Client 都应该支持开箱即用。
我们使用的是 4.5。
这是连接字符串:
Data Source=HAListener;Initial Catalog=*********;User ID=************;Password=********; Application Intent=ReadOnly
有人遇到过这个错误吗?
已解决 Application Intent 中不应有任何空格:
ApplicationIntent=ReadOnly
【问题讨论】:
-
不确定但我之前使用的是 (Info=False;Mode=Read) 而不是 (Application Intent=ReadOnly) 如果有帮助,请尝试一下...:)
-
您需要确保已安装所有更新。您正在使用的某些组件的 RTM 版本不理解该连接字符串属性。
-
@Ikiet,它出错了,但即使它有效,它也可能不会触发我们在 HA 侦听器上针对的行为 - 即“负载平衡”连接到可读副本,不同于主副本。仅供参考,错误是
ERROR: System.ArgumentException: Keyword not supported: 'info'. -
首先,向我们展示您的实际代码。
标签: sql-server sql-server-2012 connection-string high-availability