列出 DB2 Warehouse on Cloud 中 SQL 条语句的历史记录
List History of SQL Statements in DB2 Warehouse on Cloud
不确定这是否可行,但有没有办法,最好是 SQL 查询,我可以 运行 作为管理员,找出哪些 SQL 语句在一段时间内由哪些用户执行,他们花了多长时间 运行。
您要求的通常称为 "audit"。您可以在云实例中启用 Db2 审计工具,例如
create audit policy exec_policy categories execute status both error type normal;
audit database using policy exec_policy;
您不能将语句执行审计仅限于查询; DML 和 DDL 语句也将被捕获。
然后您将定期将审计记录从日志移动到审计表中:
call audit.update()
和select数据:
select * from audit.execute
您会找到更多详细信息 in the manual。
请注意,审计具有一定的性能影响,因为每个审计事件都是同步记录的。
显然,您不能及时返回并捕获已经完成的事件。只会记录启用审核后发生的事件。
您可以创建或使用现有的 event monitor for activities。
在其表格中收集了具有大量性能指标的已完成 SQL 语句的信息。
您可以为整个数据库、特定 WLM 对象(工作负载、服务 类)甚至特定会话收集此类信息。
不确定这是否可行,但有没有办法,最好是 SQL 查询,我可以 运行 作为管理员,找出哪些 SQL 语句在一段时间内由哪些用户执行,他们花了多长时间 运行。
您要求的通常称为 "audit"。您可以在云实例中启用 Db2 审计工具,例如
create audit policy exec_policy categories execute status both error type normal;
audit database using policy exec_policy;
您不能将语句执行审计仅限于查询; DML 和 DDL 语句也将被捕获。
然后您将定期将审计记录从日志移动到审计表中:
call audit.update()
和select数据:
select * from audit.execute
您会找到更多详细信息 in the manual。
请注意,审计具有一定的性能影响,因为每个审计事件都是同步记录的。
显然,您不能及时返回并捕获已经完成的事件。只会记录启用审核后发生的事件。
您可以创建或使用现有的 event monitor for activities。
在其表格中收集了具有大量性能指标的已完成 SQL 语句的信息。
您可以为整个数据库、特定 WLM 对象(工作负载、服务 类)甚至特定会话收集此类信息。