暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

Oracle 审计数据的使用

ASKTOM 2021-01-28
340

问题描述

嗨,
我有一个关于Oracle审计功能以及如何使用创建的数据的问题。
出于测试目的,我使用Oracle Auditing从架构中的4个表中收集了一些DML数据。
现在,我可以在dba_common_audit_trail视图中看到大量的条目,并且在这些条目中,我有SQL_TEXT和SQL_BIND列。
要重现原始工作负载,我需要将SQL_BIND信息合并到SQL_TEXT中,以创建用于测试的INSERT,UPDATE,DELETE语句包。
是否有任何功能可以合并此数据或如何实现所需的结果?

样本数据:
SQL_TEXT = 
'INSERT INTO NAINFOWLTTOSAP ( NAID, NAART, STATUS, SATZSUMME, UEBERTRAGENDURCH, WIEDERHOLUNGSZAEHLER, BENUTZERNR, KLASSE, ERSTELLDATUM, BEARBEITUNGSDATUM, ARCHIVDATUM, FEHLERNR, FEHLERTEXT, BUCHUNGNR, LASTSAPTRAN, LASTSAPTRANNR ) VALUES ( :B16 , :B15 , :B14 , :B13 , :B12 , :B11 , :B10 , :B9 , :B8 , :B7 , :B6 , :B5 , :B4 , :B3 , :B2 , :B1 )'
SQL_BIND = 
' #1(7):2808660 #2(3):500 #3(4):2001 #4(1):2 #5(1):7 #6(1):0 #7(3):333 #8(1):7 #9(17):1/7/2021 14:27:52 #10(0):  #11(0):  #12(0):  #13(0):  #14(11):LVS18759643 #15(0):  #16(0): `


感谢您的任何帮助!

专家解答

我不确定您所说的 “合并此数据” 是什么意思。审核是为了让您记录发生的事情; 它不打算用于重建工作负载。如果这是您的目标,则可能需要研究实际的应用程序测试。

这就是说,您可以使用您最喜欢的CSV到行技巧来拆分绑定变量的值,例如:

with rws as (
  select '#1(7):2808660 #2(3):500 #3(4):2001 #4(1):2 #5(1):7 #6(1):0 #7(3):333 #8(1):7 #9(17):1/7/2021 14:27:52 #10(0): #11(0): #12(0): #13(0): #14(11):LVS18759643 #15(0): #16(0):' vs
  from   dual
)
  select regexp_substr ( vs, '[^#]+', 1, r ) 
  from   rws, lateral (
    select level r from dual
    connect by level <= regexp_count ( vs, '#[0-9]+' )
  );

REGEXP_SUBSTR(VS,'[^#]+',1,R)   
1(7):2808660                     
2(3):500                         
3(4):2001                        
4(1):2                           
5(1):7                           
6(1):0                           
7(3):333                         
8(1):7                           
9(17):1/7/2021 14:27:52          
10(0):                           
11(0):                           
12(0):                           
13(0):                           
14(11):LVS18759643               
15(0):                           
16(0):


然后使用这些运行相应的语句。

你如何做到这一点取决于你的应用程序和你的目标。您可以使用这些来创建一系列SQL脚本,但是很难使这些脚本反映应用程序的工作负载。可能有 (非SQL) 代码处理事务中的语句之间的数据,并发效果等。
文章转载自ASKTOM,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论