我有3个节点,如S2,S3,S4
S3是主服务器,S2是辅助服务器,S4是只读服务器(我做成)
并且alwayson Availabilty Grps没有任何问题
我有配置read / wirte和读取路线如下所示
我的数据库连接代码是:
Data Source=tcp:[listener IP]; Initial Catalog=[DB NAME]; User ID=sa;
Password=sa;ApplicationIntent=ReadOnly;MultiSubnetFailover=True;
我运行我的程序,它总是在主服务器上运行
我该怎么办? 非常感谢你。
答案 0 :(得分:0)
这可能是导致只读请求无法路由到S4的几个原因。
首先,让我们确保我们在同一页面:
当您使用SSMS连接到侦听器时,您是否曾更改过连接选项?如果没有,则不会使用路由表连接连接。
要验证,请启动SSMS,并尝试连接到服务器:
输入监听器名称和端口号,然后在单击Connect
按钮之前,注意有一个Options
按钮,单击它。
你有没有看到任何东西?如果它是空白的,您需要在其中放置以下参数:
“ApplicationIntent=ReadOnly”
然后,您可以使用select @@servername
来验证您是否路由到只读节点。
如果能回答你的问题,请告诉我。
- !欢呼声