adam.g Asked: 2022-02-10 07:00:57 +0800 CST2022-02-10 07:00:57 +0800 CST 2022-02-10 07:00:57 +0800 CST 服务器重启后查询存储强制计划是否仍然存在? 772 想问一下,因为找不到这个信息。 服务器重启后查询存储强制计划是否仍然存在? 在哪些情况下,通过查询存储强制执行计划不会保持有效? sql-server sql-server-2016 1 个回答 Voted Best Answer Josh Darnell 2022-02-10T09:57:30+08:002022-02-10T09:57:30+08:00 是的,强制计划在服务器重新启动时起作用。这是因为有关计划强制的信息存储在数据库中,并与其他用户数据一起保存在磁盘上。您可以在查询存储 DMV 中看到这一点: SELECT * FROM sys.query_store_plan WHERE is_forced_plan = 1; 如果您认为某个计划应该被强制执行,但事实并非如此,您可以设置一个扩展事件会话query_store_plan_forcing_failed以尝试获取有关它失败原因的更多信息。 在哪种情况下通过查询存储强制计划不会生效? 计划强制可能无法生效的原因列表位于“last_force_failure_reason_desc”下:sys.query_store_plan (Transact-SQL) 其他一些更平凡的原因可能是 强制计划已从查询存储数据中清除(因为自动清理,或者有人手动清除查询存储),或者 查询在可读的辅助节点上运行(计划强制不适用),或者 查询文本以某种方式更改,导致它获得新的查询哈希,因此不再匹配用于计划强制的目的
是的,强制计划在服务器重新启动时起作用。这是因为有关计划强制的信息存储在数据库中,并与其他用户数据一起保存在磁盘上。您可以在查询存储 DMV 中看到这一点:
如果您认为某个计划应该被强制执行,但事实并非如此,您可以设置一个扩展事件会话
query_store_plan_forcing_failed
以尝试获取有关它失败原因的更多信息。计划强制可能无法生效的原因列表位于“last_force_failure_reason_desc”下:sys.query_store_plan (Transact-SQL)
其他一些更平凡的原因可能是