查询存储审计

Mic*_*vko 2 sql-server sql-server-2016 query-store

我们经常使用查询存储强制计划功能。
我们想审核何时以及谁强制执行每个计划。
是否需要扩展事件会话来审核此事件,
或者有包含此特定信息的 dmvs 或目录视图?

Ran*_*gen 10

您可以对sys.sp_query_store_force_plan过程的执行进行一些审核。

创建服务器审计

USE master ;  
GO  
-- Create the server audit.   
CREATE SERVER AUDIT ServerAudit  
    TO FILE ( FILEPATH =   
'D:\AuditFiles\' ) ;   
GO  
-- Enable the server audit.   
ALTER SERVER AUDIT ServerAudit   
WITH (STATE = ON) ;  
Run Code Online (Sandbox Code Playgroud)

创建数据库审计规范

CREATE DATABASE AUDIT SPECIFICATION Audit_Plan_force
FOR SERVER AUDIT ServerAudit  
ADD (EXECUTE
     ON sys.sp_query_store_force_plan BY public)   
WITH (STATE = ON) ;   
GO  
Run Code Online (Sandbox Code Playgroud)

在用户数据库中强制执行计划

在此处输入图片说明

查询审计文件

SELECT   event_time,Action_id,succeeded,server_principal_name,database_name,object_name,Statement
FROM fn_get_audit_file('D:\AuditFiles\*',default,default);
Run Code Online (Sandbox Code Playgroud)

结果 在此处输入图片说明