oracle logmnr 归档日志分析遇到的三个问题:MACHINE_NAME 和 SESSION_INFO为UNKNOWN; SQL_REDO 显示像乱码;session_info只显示80个字符

        这两天测试oracle logmnr,中间遇到三个问题。一个是MACHINE_NAME 和 SESSION_INFO 显示为UNKNOWN的,后经测试发现是因为分析日志没有包含会话开始的日志,比如用户登陆很长时间了,中间已生成了几个归档日志,如果你分析的日志里没包含用户登陆所生成的这个归档日志,MACHINE_NAME 和 SESSION_INFO 就会显示为UNKNOWN,只需把包含该用户登陆信息的归档加入分析即可。

        还有一个问题就是分析归档日志后查询出来的 SQL_REDO 字段显示的内容都是一些代码标识符,不是原始的SQL语句,只看这个语句没法看出这个SQL具体操作的实际内容。这个是由于分析归档的时候没有做生成数据字典的操作,生成语句类似如下:

exec dbms_logmnr_d.build('dict.ora','/oracle/file',dbms_logmnr_d.store_in_flat_file)。如果你追踪的表是之前生成数据字典之后创建或修改的,那么在做日志分析之前数据字典就需要重新生成,不然看到的就是一些奇怪标识符的SQL。

       另外还遇到一个问题,我plsql的命令窗口分析日志后查询出来的session_info内容为:login_username=TEST client_info= OS_username=Administrator Machine_name=WORKGROU,session_info显示信息不全,只有80个字符,后面字段明显是被截断了,网上搜索半天居然没查到一个有类似的案例。后来查询了下length(session_info)长度为161,证明内容不止80个字符的,然后运行

set linesize 300
col session_info format a180

结果查询出来的内容就显示完整了,居然是这个命令行下默认显示长度问题。

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值