db2如何实现对表级的数据库查询,变更做记录?

想实现对库中某个表的访问记录,包含查询,插入,修改等。

参与9

2同行回答

atpeace331atpeace331数据库管理员银行
如果您的需求只是 “对某一张表的DML语句、SELECT语句做记录” 的话,有下面几种方案:开审计记录使用语句的 snapshot 快照接口筛选访问该表的 sql语句创建个 SQL语句的事件监视器, “CREATE EVENT MONITOR stmt1.env FOR STATEMENTS WHERE ....” 然后,从事件监视器的记录中...显示全部

如果您的需求只是 “对某一张表的DML语句、SELECT语句做记录” 的话,有下面几种方案:

  1. 开审计记录
  2. 使用语句的 snapshot 快照接口筛选访问该表的 sql语句
  3. 创建个 SQL语句的事件监视器, “CREATE EVENT MONITOR stmt1.env FOR STATEMENTS WHERE ....” 然后,从事件监视器的记录中搜索该表的sql语句。为了减少事件监视器记录的数据量和潜在的性能损耗,可以针对访问该表的应用程序名创建事件监视器。
  4. 或者,使用 DB2v9.7以后提供的轻量级表函数 MON_GET_PKG_CACHE_STMT 直接从监视内存中检索访问该表的动态和静态sql 语句。
    我比较喜欢第 4 种方法,将包含特定表的sql 语句抓到监控服务器,对数据库服务器的压力小。审计、事件监视器在数据库服务器上记录,会影响性能,不太喜欢。
收起
银行 · 2019-04-10
  • 目前是使用对单表的审计功能,但不知道对性能影响如何,能否帮解答下,谢谢
    2019-04-10
  • 你可以测试下 “开审计”前后访问该表的应用性能差异变化,就可以知道了。但是,肯定会有性能损耗的,至于性能下降多少,你得根据具体环境进行性能测试。
    2019-04-10
yhl71yhl71数据库架构师某公司
建议部署审计软件,对数据库影响小;如IBM gardium。显示全部

建议部署审计软件,对数据库影响小;如IBM gardium。

收起
IT咨询服务 · 2019-04-12
浏览1945

问题来自

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2019-04-09
  • 关注会员:3 人
  • 问题浏览:3151
  • 最近回答:2019-04-12
  • X社区推广