当前位置: 首页 > 面试题库 >

Oracle SQL查询日志记录

燕鸿波
2023-03-14
问题内容

我正在使用Oracle 11g标准版。

我想将用户正在执行的所有SQL查询记录到表中。

如何才能做到这一点?


问题答案:

如果您使用的是现代版本的数据库(9i或更高版本),并且您拥有企业版许可证,则可以使用细粒度审核。它使我们能够通过已定义的策略以非常低的粒度审核用户查询。

要捕获SQL文本并绑定变量,您需要在添加FGA策略时适当设置AUDIT_TRAIL参数。
了解更多。

“我使用的是11g标准,因此不支持审核功能。”

不完全是。AUDIT命令是标准Oracle构建的一部分,但是它仅允许我们在给定用户针对给定表发出SELECT时捕获。但是,是的,找出到底 是什么
,他们正在选择需要企业版许可证。

另外,没有ON SELECT触发器,因此我们无法滚动自己的触发器。

“那么我可以在标准版中使用AUDIT命令吗?……但是一位顾问告诉我,如果不支付企业许可证,就无法使用它?”

我自己以顾问的身份发言,我不得不说那些家伙并不总是知道他们在说什么。

因此,让我们清楚一点:

  • AUDIT命令是Oracle SQL的一部分。它可与标准版一起使用。实际上,从11g开始,默认情况下已启用它。它审核一般活动。 了解更多。
  • 细粒度审核是一个PL / SQL程序包,仅当您拥有企业版时才可用。它使我们可以在非常低的水平上审计用户活动。了解更多。


 类似资料:
  • 在Crystal Reports中,我使用以下查询(针对Oracle数据库)为报表中的单个字段生成数据: 这可以很好地工作,并基于提供的{HB_As_At_Date}(the{?}语法是Crystal将参数值嵌入SQL(SQL)的方法。不过,上述查询的内容不是我的问题——我想做的是在几个不同的日期重复运行它,并将输出输入Crystal以供在报告中使用。 假设我希望在9月的每个星期一运行这个查询,我

  • 慢查询日志是 Redis 提供的一个用于观察系统性能的功能, 这个功能的实现非常简单, 这里我们也简单地讲解一下。 本章先介绍和慢查询功能相关的数据结构和变量, 然后介绍 Redis 是如何记录命令的执行时间, 以及如何为执行超过限制事件的命令记录慢查询日志的。 相关数据结构 每条慢查询日志都以一个 slowlog.h/slowlogEntry 结构定义: typedef struct slowl

  • 主要内容:启动和设置慢查询日志,查看慢查询日志,删除慢查询日志慢查询日志用来记录在 MySQL 中执行时间超过指定时间的查询语句。通过慢查询日志,可以查找出哪些查询语句的执行效率低,以便进行优化。 通俗的说,MySQL 慢查询日志是排查问题的 SQL 语句,以及检查当前 MySQL 性能的一个重要功能。如果不是调优需要,一般不建议启动该参数,因为开启慢查询日志会或多或少带来一定的性能影响。 默认情况下,慢查询日志功能是关闭的。可以通过以下命令查看是否开启慢查

  • 2.7 频道日志查询 2.7.1 描述 通过调用该接口查询频道一个月内日志。默认每小时一个日志。 日志格式:ip - - 请求完成时间 “方法 URL 协议” 状态码 大小 来源 客户端 总处理时间 2.7.2 请求地址 地址: https://api.bokecs.com/channel/queryLog?domain={domain}&begin={begin}&end={end} 2.7.3

  • 主要内容:启动和设置通用查询日志,查看通用查询日志,停止通用查询日志,删除通用查询日志通用查询日志(General Query Log)用来记录用户的所有操作,包括启动和关闭 MySQL 服务、更新语句和查询语句等。 默认情况下,通用查询日志功能是关闭的。可以通过以下命令查看通用查询日志是否开启,命令如下: 从结果可以看出,通用查询日志是关闭的,general_log_file 变量指定了通用查询日志文件所在的位置。 启动和设置通用查询日志 在 MySQL 中,可以通过在 MySQ

  • 问题内容: 知道Python日志语句存储在哪里的方法是什么? 即如果我这样做: 在哪里可以找到日志文件?另外,当我打电话时: 这与记录器的行为/保存方式有某种关系吗? 问题答案: 该模块使用附加到记录器的处理程序来决定最终存储或显示消息的方式,位置或方式。您可以默认配置为也写入文件。您应该真正阅读过文档,但是如果您将要写入消息的文件的名称调用到哪里(请注意,您必须在调用其他任何文件之前先执行此操作