将存储过程运行到与数据库不同的兼容性级别中

时间:2019-01-29 02:20:28

标签: sql sql-server

我有一个存储,由于某种原因,它仅在19秒内以SQL Server 2008兼容级别运行,如果我将其更改为“兼容级别”到2017,则需要10分钟才能执行,因此可以在存储中执行任何选择语句程序具有2008年的兼容性?而是更改所有数据库的兼容性?

1 个答案:

答案 0 :(得分:2)

我在更新到SQL 2107时在线上看到的建议之一是,将兼容级别设置为旧服务器并打开querystore。运行此命令一段时间,以使系统捕获查询计划。将兼容性级别更改为2017,当发现运行缓慢的代码时,可以修复查询或强制计划使用效果更好的代码。或者,您可以将系统设置为通过打开自动调整功能来完成此操作。

您可以在以下位置找到有关这些信息: https://goshakkk.name/redux-side-effect-approaches/https://docs.microsoft.com/en-us/sql/relational-databases/performance/monitoring-performance-by-using-the-query-store?view=sql-server-2017