Oracle logmnr工具分析日志脚本

在oracle;对logmnr工具分析日志这个不陌生;对数据恢复应用场景经常用到;这里为了方便对归档日志进行分析;

当然网上有一个logmnr界面的工具;感觉很人性化;下载需要积分;为此写一个脚本。

##===========================================================
##   oracle_log_fetch.sh
##   created by lottu
##   2016/08/07
##   usage: oracle_log_fetch.sh  $START_TIME
##============================================================
#!/bin/bash
ORACLE_SID=ora11g;
START_TIME=$1;

out_file="/tmp/logfilelist"
sqlplus / as sysdba >/dev/null 2>&1 <<EOF
set echo off
set feedback off
set heading off
spool ${out_file}
select name
  from v\$archived_log
 where next_time > to_date(‘${START_TIME}‘, ‘yyyy-mm-dd hh24:mi:ss‘);
spool off
exit
EOF
#dbms_logmnr.add_logfile(logfilename=>‘‘);
awk ‘BEGIN{print "begin"}NR>10 && !/SQL/ {print "dbms_logmnr.add_logfile(logfilename=>‘\‘‘"$1"‘\‘‘);"}END{print "end; \n \/"}‘ /tmp/logfilelist.lst > addlogfile.sql
sqlplus / as sysdba >/dev/null 2>&1 <<EOF
start addlogfile.sql;
exec dbms_logmnr.start_logmnr(options=>dbms_logmnr.dict_from_online_catalog);
truncate table lottu.lottu01;
insert into lottu.lottu01 select * from  v$logmnr_contents;
commit;
exec dbms_logmnr.end_logmnr;
exit
EOF
时间: 2024-11-06 13:51:13

Oracle logmnr工具分析日志脚本的相关文章

python分析日志脚本

1 #!/usr/bin/env python 2 # coding:utf-8 3 4 import sys,time 5 6 class DisplayFormat(object): 7 8 def format_size(self,size): 9 KB = 1024 # KB -> B 1024 10 MB = 1048576 # MB -> B 1024 * 1024 11 GB = 1073741824 # GB -> B 1024 * 1024 * 1024 12 TB =

Oracle Supplemental 补全日志介绍

转. Oracle补全日志(Supplemental logging)特性因其作用的不同可分为以下几种:最小(Minimal),支持所有字段(all),支持主键(primary key),支持唯一键(unique),支持外键(foreign key).包括LONG,LOB,LONG RAW及集合等字段类型均无法利用补全日志. 最小(Minimal)补全日志开启后可以使得logmnr工具支持链式行,簇表和索引组织表.可以通过以下SQL检查最小补全日志是否已经开启: SELECT supplemen

分析Mysql慢日志脚本及快速定位慢Sql

分析Mysql慢日志是运维工作中,不可少的.要快速定位慢Sql,以及发现后优化Sql及修改业务,保证数据库稳定高效地工作.下面是我工作中解决的思路... 1.先查看本地数据库慢日志文件 2.编写分析慢日志脚本 #!/usr/bin/python #coding=utf-8  #字符编码 import re  #导入正则匹配模块 import time #导入时间模块 import sys  #导入sys模块 import MySQLdb #导入连接mysql模块 canshu=len(sys.a

Oracle LogMiner工具在实际工作中的运用

LogMiner工具通过分析Oracle重作日志文件(归档日志文件)中的具体内容来重现ORACLE执行过的SQL,特别是,该工具可以分析出所有对于数据库操作的DML(insert.update.delete等)语句,另外还可分析得到一些必要的回滚SQL语句.该工具特别适用于调试.审计或者回退某个特定的事务. LogMiner分析工具实际上是由一组PL/SQL包和一些动态视图组成,它作为Oracle数据库的一部分来发布,是一个完全免费的工具.但该工具和其他Oracle内建工具相比使用起来显得有些复

[转]Oracle DB 查看预警日志

"Database(数据库)"主页>"Related Links相关链接)"区域> "Alert Log Content (预警日志内容)" 查看预警日志 每个数据库都有一个alert_<sid >.log文件.此文件位于数据库所在的服务器中,如果设置了$ORACLE_BASE,则此文件默认存储在$ORACLE_BASE/diag/rdbms/<db_name>/<SID>/trace中. 数据库预

Oracle RDA工具简介

Oracle RDA英文全称叫做"Oracle Remote Diagnostic Agent".它是Oracle用来收集.分析数据库信息的工具,它是用perl编写的,包含非常丰富的诊断脚本,使用它科技非常便捷的采集到Oracle数据库服务器系统配置和数据库的详细信息,运行该工具不会改变系统的任何参数. RDA收集的相关数据非常全面,可以简化我们日常监控.分析数据库的工作.Oracle Support也建议我们在反馈相关问题时,提供RDA收集的数据,这样可以为快速解决问题提供一个有力的

Oracle DB 查看预警日志

"Database(数据库)"主页>"Related Links相关链接)"区域> "Alert Log Content (预警日志内容)" 查看预警日志每个数据库都有一个alert_<sid>.log文件.此文件位于数据库所在的服务器中,如果设置了$ORACLE_BASE,则此文件默认存储在$ORACLE_BASE/diag/rdbms/<db_name>/<SID>/trace中.数据库预警文件

Oracle 控制文件和日志文件

管理控制文件 在Oracle数据库中,控制文件是一个很小(大小一般在10MB范围内)的二进制文件,含有数据库的结构信息,包括数据文件和日志文件的信息.可以将控制文件理解为物理数据库的一个元数据存储库.控制文件在数据库创建时被自动创建,并在数据库发生物理变化时更新.控制文件被不断更新,并且在任何时候都要保证控制文件是可用的.只有Oracle进程才能够安全地更新控制文件的内容,所以,任何时候都不要试图手动编辑控制文件. 由于控制文件在数据库中的重要地位,所以保护控制文件的安全非常重要,为此Oracl

监控Oracle数据库的常用shell脚本-转

8个DBA最常用的监控Oracle数据库的常用shell脚本--转 分类: Linux 一.8个重要的脚本来监控Oracle数据库: 1.检查实例的可用性 2.检查监听器的可用性 3.检查alert日志文件中的错误信息 4.在存放log文件的地方满以前清空旧的log文件 5.分析table和index以获得更好的性能 6.检查表空间的使用情况 7.找出无效的对象 8.监控用户和事务 二.DBA需要的Unix基本知识 基本的UNIX命令,以下是一些常用的Unix命令: ps--显示进程 grep-