• Oracle归档日志分析


    本记录仅供自己使用,有看不懂的朋友莫见怪,后期会做相应补充。

    本机操作系统:win10

    服务器操作系统:Linux

    服务器数据库:Oracle

    一、找到日志文件

      1、通过Xshell 6远程连接服务器,登录相应账户:su oracle

      2、切换到日志路径下:cd /oradata/fast_recovery_area/WCSDB/WCSDB/archivelog/

      3、查询本路径下所有文件夹或文件:ls

      4、切换到对应文件夹下:cd 2020_05_11

      其他:查询本路径下所有文件信息(创建时间、大小、名称)大小:ls -lh

      

      二、打开日志分析

       1、通过plsql连接数据库,新建命令窗口。

       2、执行命令脚本:

      1.使用脚本创建相关的包(本操作只能执行一次,不用多次执行)

        @$ORACLE_HOME/rdbms/admin/dbmslm.sql
        @$ORACLE_HOME/rdbms/admin/dbmslmd.sql;
        第一个脚本用来创建DBMS_LOGMNR包,该包用来分析日志文件。
        第二个脚本用来创建DBMS_LOGMNR_D包,该包用来创建数据字典文件。

      2.指定要分析的日志文件
        exec sys.dbms_logmnr.add_logfile(logfilename => '/oradata/fast_recovery_area/WCSDB/WCSDB/archivelog/2020_05_07/o1_mf_1_5186_hc6rnjlj_.arc',options => dbms_logmnr.new);

      3.使用本地的在线数据字典分析归档日志
        exec sys.dbms_logmnr.start_logmnr(options => sys.dbms_logmnr.dict_from_online_catalog);

      4,查询分析出来的归档日志内容,例如统计最大修改量的Schema
        select seg_owner,count(*) from v$logmnr_contents group by seg_owner;
        select count(1),substr(sql_redo,1,30) from v$logmnr_contents group by substr(sql_redo,1,30) order by count(1) desc ;

      5.查询日志详细

        SELECT sql_redo, sql_undo from v$logmnr_contents;

      6.增加别的日志文件
        exec sys.dbms_logmnr.add_logfile(logfilename => '/oradata/fast_recovery_area/WCSDB/WCSDB/archivelog/2020_05_07/o1_mf_1_5090_hc5qss4q_.arc',options => dbms_logmnr.addfile);

        exec sys.dbms_logmnr.start_logmnr(options => sys.dbms_logmnr.dict_from_online_catalog);

      7.结束分析归档日志
        exec sys.dbms_logmnr.end_logmnr;

      

  • 相关阅读:
    .Net vs Java?
    使用HyperV安装Linux系统
    C#调用Lua
    KubernetesService介绍服务发现
    缓存雪崩、缓存击穿和缓存穿透
    10 个开源项目
    minikube cncf.io
    Parallel的使用
    通过Rancher Desktop在桌面上运行K8s
    2021 .NET 开发者峰会顺利在网上落幕,线上直播回看汇总
  • 原文地址:https://www.cnblogs.com/tk-bolg/p/12867591.html
Copyright © 2020-2023  润新知