如何记录用户在 SQL Server 2017 Standard 中所做的所有查询?

jst*_*err 1 sql-server audit logs sql-server-2017

有没有可能做到这一点?由于内部合规性,需要记录在任何数据库中执行的所有查询和操作。

如果我们需要 MS SQL 2017 标准版或企业版,我需要信息(和/或来源)以确保记录数据库管理员的活动(运行、修改等查询...),而不仅仅是非管理员执行的活动用户。

Spö*_*rri 6

通用标准合规性是一项企业功能

在标准版以及任何版本中,您都可以创建跟踪和跟踪“审计架构对象访问事件”,这将为您提供语句级审计。然后您可以过滤对象或数据库以最小化日志并将跟踪创建为服务器端跟踪

审计架构对象访问事件似乎无法使用扩展事件访问,但可以设置服务器端跟踪来停止服务器,如果日志不再可能,并且足够详细,可以作为 PCI 要求的合规审计接受

正如我在下面更正的那样,在 SQL Server 的更高版本中,您可以在所有版本中设置数据库审计,并针对数据库或特定对象审计所有语句。