DB2 Cloud on Cloud中SQL语句的列表历史记录

时间:2019-04-03 12:21:35

标签: sql db2 ibm-cloud db2-luw audit-logging

不确定是否可行,但是有一种方法,最好是我可以以管理员身份运行的SQL查询,以找出执行了哪些SQL语句,由哪些用户以及他们运行了多长时间,在一段时间内。

2 个答案:

答案 0 :(得分:1)

您要的内容通常称为“审核”。您可以在云实例中启用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 * from audit.execute

您会找到更多详细信息in the manual

请注意,由于每个审核事件都是同步记录的,因此审核对性能有一定影响。

很显然,您无法返回过去并捕获已经完成的事件。仅记录启用审核后发生的事件。

答案 1 :(得分:1)

您可以创建或使用现有的event monitor for activities
表中收集了有关具有很多性能指标的已完成SQL语句的信息。
您可以收集整个数据库,特定WLM对象(工作负载,服务类)甚至特定会话的此类信息。