sql-server - 在更好的服务器上还原后 SQL Server 速度变慢
问题描述
我们在服务器 A 上有一个 SQL Server 2014 Express 数据库。在我们备份数据库并将其恢复到更好的服务器 B 并使用 SQL Server 2017 Express 后,我们发现执行查询需要更长的时间。
这些是我在还原后完成的任务:
- 重建索引
- 全部重组
- 更新统计
但我的结果仍然慢了将近 5-6 秒。
我不是 SQL Server DBA,所以我想问一下 SQL 是否自动优化查询计划,唯一剩下的就是等待几天自行锻炼?
或者还有什么需要检查的吗?
解决方案
你把它混合起来。好的,首先 - 服务器如何更好?
但通常在 2014 年和 2017 年之间,查询优化器已更改,并且不会因索引错误而出现更多问题。不仅仅是统计数据 - 但它将更多地依赖于指数。检查您的索引,检查哪些查询很慢,查看查询盘。
这不是管理 - 这是“出现在 2ß17 中的程序员错误,而 2014 可以解决它”。
也可以尝试使用跟踪标志 8491(禁用新的基数估计)启动服务并查看行为是否相似。您现在还可能遇到参数嗅探问题(跟踪滞后 4136)
推荐阅读
- python - 使用 'if... or' 语句遍历两个列表
- python - Flake8 linter 通过 Bitbucket 管道仅对推送文件进行检查
- flink-streaming - 在 Flink SQL 中使用 ROW_NUMBER
- python - 检查图像文件是否与给定链接中的图像匹配
- javascript - 当验证失败时,我在每次新提交时都会收到递增数量的警报
- android - Android上的USB调试
- excel - Excel 工作表宏是否有原因在 Excel 2013 中损坏但在 Office 355 中工作正常?
- jsf - 在 JSF 中完成响应生成后,有什么方法可以调用方法吗?
- c - 我想用 C 制作程序打印每个全数
- swift - SwiftUI 和 Core Data:通过比较多个 fetches 来确定一个值