运行 特定 Windows 帐户时查询速度变慢

Queries slow when run by specific Windows account

运行 SQL Server 2014 Express 在我们的域上。我们使用 Windows Authentication 登录。所有查询都在存储过程中执行。

现在,系统对我们的所有用户都运行良好 - 除了一位用户。当他登录(使用我们的软件)时,所有查询花费大约 10 倍的时间(例如 30 毫秒而不是 2 毫秒)。查询相同,数据库相同,网络速度相同,操作系统相同,SQL 服务器驱动程序相同,连接池相同,DNS 相同。换电脑也无济于事。问题似乎与正在使用的帐户有关。

究竟是什么导致了这种巨大的性能下降?

请指教!

我会尝试重建 SP(通过 运行 复制其现有结构的 ALTER 语句)以强制 SQL 服务器重新编译。我不知道 SQL 服务器缓存东西的所有方式,但它肯定可以为不同类型的连接创建不同的执行计划,所以如果你的慢用户是 运行 一个效率低下的版本,我不会感到惊讶执行计划。

http://www.sommarskog.se/query-plan-mysteries.html