我们将 MVC4 应用程序从 SQL 2008 升级到 SQL 2012 后发现性能下降得非常厉害。
在数据库服务器上的管理工作室中直接运行的查询比升级前运行速度要慢一些(最多慢两倍)。
从 Web 服务器(一台单独的机器)运行的查询运行速度非常慢,有些甚至慢了四倍以上。我们将问题归咎于两台机器之间的网络,但我们的托管公司建议应该针对 SQL 2012 更改连接字符串。我不知道 SQL 2012 连接字符串与 SQL 2008 连接字符串有什么不同 - 对吗?
谢谢!
我们的连接字符串多年来一直没有改变,如下所示:Server=111.111.111.111;Database=MyDbName;User ID=MyDbUser;Password=MyDbPassword;
更新:这最终被证明是防火墙上的物理端口有故障!
答案1
否。除非您使用其中一项新的基于连接的功能,否则连接字符串在一段时间内不会发生改变,而尽管在您拥有的版本(可用性组)之间存在一些连接字符串,但如果不使用,它们则无关紧要。
因此,就您而言 - 肯定什么都没有改变。
您必须运行分析器并找出原因。这是您在升级生产之前应该做的事情 - 标准方法。