精华内容
下载资源
问答
  • oracle 归档日志查看方法--logminer

    万次阅读 2016-09-24 23:05:44
    环境: AIX6.1 ...一查发现原因是归档日志切换频繁,操作系统空间不够。 确定原因: [aix01@oracle]/oracle>df -g Filesystem GB blocks Free %Used Iused %Iused Mounted on /dev/h
    环境:
    AIX6.1
    Oracle 11g RAC
    故障:
    数据库频繁出现归档日志空间不够,导致数据库无法登陆的故障。一查发现原因是归档日志切换频繁,操作系统空间不够。
    确定原因:
    1. [aix01@oracle]/oracle>df -g
    2. Filesystem GB blocks Free %Used Iused %Iused Mounted on
    3. /dev/hd4 0.50 0.28 44% 13674 17% /
    4. /dev/hd2 3.00 0.67 78% 49208 23% /usr
    5. /dev/hd9var 1.00 0.37 63% 9285 10% /var
    6. /dev/hd3 2.00 1.03 49% 2407 1% /tmp
    7. /dev/fwdump 1.00 0.99 2% 30 1% /var/adm/ras/platform
    8. /dev/hd1 0.25 0.18 28% 465 2% /home
    9. /dev/hd11admin 0.25 0.25 1% 5 1% /admin
    10. /proc - - - - - /proc
    11. /dev/hd10opt 0.50 0.28 44% 10241 14% /opt
    12. /dev/livedump 0.25 0.25 1% 12 1% /var/adm/ras/livedump
    13. /dev/oraclelv 30.00 11.29 63% 161681 6% /oracle
    14. /dev/installlv 15.00 3.38 78% 6478 1% /install
    15. /dev/crslv 10.00 3.35 67% 7807 1% /crs
    16. /dev/wmsapplv 30.00 17.49 42% 15537 1% /wmprod
    17. /dev/archivelv 29.25 29.25 1% 4 1% /arch1
    18. /dev/backuplv 400.00 107.13 74% 306 1% /sysbackup
    19. aix02:arch2 30.25 0.64 99% 3 1% /arch2

    可以看到,/arch2里文件系统空间已经达到99%,/arch2是用来存放归档日志的文件系统,进而导致数据库出错。

    提出问题:
    这下问题来了,/arch2的空间是30G,每天备份脚本都会自动rman备份归档日志,并自动清除归档日志文件,按照正常情况下,数据库不可能一天产生这么大的归档日志量。

    如何查询归档日志都是由什么应用产生的,这就是logminer的用途。

    使用方法:

    1. -- 1.指定要分析的日志文件
    2. exec sys.dbms_logmnr.add_logfile(logfilename => '/arch2/2_825_733092736.dbf',options => dbms_logmnr.new);

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

    5. -- 3.查询分析出来的归档日志内容,例如统计最大修改量的Schema
    6. select seg_owner,count(*) from v$logmnr_contents group by seg_owner;

    7. -- 4.增加别的日志文件
    8. exec sys.dbms_logmnr.add_logfile(logfilename=>'/arch2/2_825_733092736.dbf');

    9. -- 5.结束分析归档日志
    10. exec sys.dbms_logmnr.end_logmnr;

    下面是具体的过程:

    1. SQL> exec sys.dbms_logmnr.add_logfile(logfilename => '/arch2/2_825_733092736.dbf',options => dbms_logmnr.new);

    2. PL/SQL procedure successfully completed

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

    4. PL/SQL procedure successfully completed
    1.   SQL> select seg_owner,count(*) from v$logmnr_contents group by seg_owner;

      SEG_OWNER                          COUNT(*)
      -------------------------------- ----------
                                             2237
      SYS                                     688
      TMS                                      60
      SPHSY                                    70
      SINOSYNEW                                30
      SINOSY                                  381
      WAS                                 4551934

      7 rows selected
    SQL> execute dbms_logmnr.end_logmnr ;

    PL/SQL procedure successfully completed

    结论:

    从上面查询结果可以看出操作量最大的用户是WAS用户,再具体看下v$logmnr_contents可以发现基本修改的内容是一致的。
    与开发人员沟通后,最终确认是一个执行update过程存在问题,where条件未正确定位到记录,每执行一次都会导致大规模的修改数据。

    延伸:
    LogMiner使用示例
    http://hi.baidu.com/dba_hui/blog/item/48bc365f6d7582c79d8204eb.html

    展开全文
  • Oracle管理oracle归档日志管理 oracle归档日志管理 在Oracle中数据一般是存放在数据文件中不过数据库与Oracle最大的区别之一就是数据库可以在数据出错的时候进行恢复这个也就是我们常见的Oracle中的重做日志REDOFILE...
  • 二、查看是否开启归档日志 查看是否开启归档: SQL> archive log list; 三、删除数据库归档文件 执行下面命令删除7天以前的归档日志: DELETE ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-7'; 四、执行Rman逻辑上...
  • 当然们在OS下把这些物理文件delete掉后,在我们的controlfile中仍然记录着这些archivelog文件的相关信息,在oracle的OEM管理器中有可视化的日志展现出,当我们手工清除 archive目录下的文件后,这些记录并没有被我们...

     我们都知道在controlfile中记录着每一个archivelog文件的相关信息,当然们在OS下把这些物理文件delete掉后,在我们的controlfile中仍然记录着这些archivelog文件的相关信息,在oracle的OEM管理器中有可视化的日志展现出,当我们手工清除 archive目录下的文件后,这些记录并没有被我们从controlfile中清除掉,也就是oracle并不知道这些文件已经不存在了,这时候我们要做手工的清除的话,下面我经过实验,可以尝试这种方法:

    1.    进入rman 

    C:\User\Administrator>rman

    2.    connect target /

    RMAN> connect target /

    3.查看归档日志的状态
    RMAN> list archivelog all;

    4.手工删除归档日志文件
    RMAN> DELETE ARCHIVELOG ALL COMPLETED BEFORE 'SYSDATE-7';

    SYSDATA-7,表明当前的系统时间7天前

    这样做仍然会在RMAN里留下未管理的归档文件,它的作用还是相当于直接用操作系统命令将归档日志文件直接删除,而ORACLE控制文件并不知道,因此仍需要在RMAN里执行下面2条命令:
    crosscheck archivelog all;
    delete expired archivelog all;

    5.退出rman

    RMAN> exit

    6.查看归档日志占有率

    退出RMAN

    输入sqlplus连接oracle

    然后SQL> select * From v$flash_recovery_area_usage;    ---------这里可以看到闪回恢复区里的空间占有率情况:

    select * from v$recovery_file_dest;  --查看归档日志的存放地址;

    展开全文
  • --查看归档日志的存放地址; 使用rman清空归档日志 crosscheck archivelog all; --查看可以所有的归档文件 delete expired archivelog all; --清空过期的归档文件 如何确认归档日志是否过期,rman有一个保留...

    select * from v$flash_recovery_area_usage; --查看空间占用率

     select * from v$recovery_file_dest;  --查看归档日志的存放地址;

    使用rman清空归档日志

         crosscheck archivelog all;  --查看可以所有的归档文件

         delete expired archivelog all; --清空过期的归档文件

     如何确认归档日志是否过期,rman有一个保留策略,可以定义多少天之前的日志算为过期;

          
       CONFIGURE RETENTION POLICY TO RECOVERY WINDOW OF 14 DAYS;

     

       让恢复窗口成为14天大小。
      show all --查看所有的rman策略.

    select count(*) from v$archived_log where archived='YES' and deleted='NO'; --查看所有归档,未删除的归档日志 


    二、 如何解决“归档日志已满问题”

    问题描述:所用数据库为 Oracle 10g ,模式为归档模式,oracle 系统默认的归档空间为2G,由于日志过多,空间写满,数据库的redo文件不能归档,而出现oracle数据库挂起的问题。

    oem打开oracle 10g 数据库操作界面,会显示如下错误信息:    “ 由于输出设备已满或不可用, 归档程序无法归档重做日志。”

    数据库无法使用

    现将解决办法稍作总结:

    方法一:增大归档日志空间的大小

    可以通过下面的方法来调整系统的回闪恢复区大小:
    首先是关闭数据库:以SYS身份链接到oracle,执行>shutdown immediate;
    启动数据库到mount状态:>startup mount
    查看回闪恢复区的大小和存放目标:>show parameter db_recovery_file_dest
    修改回闪恢复区的大小>alter system set db_recovery_file_dest_size = 4G(缺省是2G,可以根据实际情况调整大小)
    最后打开数据库:>alter database open;

      OK , 问题解决。数据库恢复使用。

    展开全文
  • 如何解决“归档日志已满问题” 问题描述:所用数据库为Oracle10g ,模式为归档模式,oracle 系统默认的归档空间为2G,由于日志过多,空间写满,数据库的redo文件不能归档,而出现oracle数据库挂起的问题。 oem打开...

    一 如何解决“归档日志已满问题”

    问题描述:所用数据库为 Oracle 10g ,模式为归档模式,oracle 系统默认的归档空间为2G,由于日志过多,空间写满,数据库的redo文件不能归档,而出现oracle数据库挂起的问题。

    oem打开oracle 10g 数据库操作界面,会显示如下错误信息:    “ 由于输出设备已满或不可用, 归档程序无法归档重做日志。”

    数据库无法使用

    现将解决办法稍作总结:

    方法一:增大归档日志空间的大小

    可以通过下面的方法来调整系统的回闪恢复区大小:
    首先是关闭数据库:以SYS身份链接到oracle,执行>shutdown immediate;
    启动数据库到mount状态:>startup mount
    查看回闪恢复区的大小和存放目标:>show parameter db_recovery_file_dest
    修改回闪恢复区的大小>alter system set db_recovery_file_dest_size = 4G(缺省是2G,可以根据实际情况调整大小)
    最后打开数据库:>alter database open;

      OK , 问题解决。数据库恢复使用。

    方法二 :进入oracle清空日志信息,把空间释放出来

    启动数据库到mount状态:

     >sqlplus “/as sysdba”

    >startup mount

    新起一个终端,用rman进入把归档日志删除

    命令>rman target/  (只安装了一个oracle10g数据库)

    命令>crosscheck archive

    展开全文
  • 归档日志

    2013-07-23 22:06:45
    Oracle可以将联机日志保存在多个不同位置,将联机日志转化为归档日志的过程叫做归档,相应的日志被称为归档日志。通过使用归档日志,可以保留所有重做历史记录,在数据库处于归档模式下进行日志切换时,后台ARCH进程...
  • 查看oracle归档日志路径

    万次阅读 2019-07-12 09:13:38
    查看oracle归档日志路径 1.修改归档日志的格式 默认格式是:“ %t_%s_%r.dbf”,我们尝试将格式修改为“%t_%s_%r.arch”,这是一个静态参数,需要重新启动数据库才生效。 sys@ora10g> show parameter log_...
  • Oracle 开启归档日志以及关闭归档日志
  • oracle查看是否启用归档日志

    万次阅读 2015-09-09 21:01:46
    今天忽然发现oracle的数据硬盘中的某个文件夹下的文件数量达到了40多个G,都是些xxxxxxxxxxxxxxxxxxx.000x的文件,查看了下日期,发现日期从3月多到现在每星期都有,想想可能这些可能使以前设置了归档日志然后保留下...
  • 删除归档日志

    2012-12-18 17:04:00
    在连接数据库出现因为归档日志没有连接上去的时候,可以通过删除oracle归档日志来解决该问题
  • oracle归档日志笔记

    2018-05-15 15:06:35
    oracle归档日志笔记,oracle归档日志笔记
  • oracle归档日志管理

    2017-02-15 10:46:13
    oracle 归档日志 管理
  • Oracle清除归档日志

    2016-06-21 13:55:50
    Oracle清除归档日志
  • oracle归档日志删除

    2013-03-28 22:20:31
    怎样查看oracle的归档日志大小及其删除归档日志的方法
  • DB2 归档日志清理

    2018-02-01 09:57:00
    DB2的日志清理工作,db2 list history archive log all for CISFEDB 查看归档时间戳以及归档日志个数,Number of matching file entries = 6 表示有效日志个数 5.1、db2 force application all 停连接会话
  • oracle归档日志

    2015-05-15 14:20:49
    本文档为oracle归档日志,开启归档日志可进行非脱机备份(热备)!
  • Oracle归档日志空间不足引发的问题及归档日志的检测与删除
  • oracle 归档日志

    2019-04-22 19:10:47
    归档日志2. 查看归档模式3. 归档日志命名格式4. 手动切换日志5. 归档路径5.1 更改归档路径5.2 配置让归档路径使用闪回区5.3 查看归档情况及信息6. 删除归档⽇志 1. 归档日志 归档 VS ⾮归档 归档会在⽇志切换时,...
  • 当ORACLE 归档日志满了后,将无法正常登入ORACLE,需要删除一部分归档日志才能正常登入ORACLE。   一、首先删除归档日志物理文件,归档日志一般都是位于archive目录下,AIX系统下文件格式为“1_17884_667758186....
  • 归档目标:存放归档日志文件的目录,一个数据库可以有多个归档目标,在创建数据库的时候默认设置了归档目标.设置归档目标语法 alter system set log_archive_dest_N =’{location|server}+directory’; directory...
  • –连接恢复管理器 C:\Documents and Settings\mengzhaoliang>rman target/ –归档日志列表 RMAN> list archivelog all; –删除物理文件不存在的归档日志 RMAN> delete expired archivelog all; –删除7天前的归档...
  • DB2归档日志设置

    2019-11-06 09:28:11
    DB2归档日志设置 db2活动日志占用的最大空间计算公式 归档日志设置是否成功的检测方式
  • oracle 数据库归档日志

    千次阅读 2018-09-11 09:23:04
    数据库归档日志 在系统创建归档路径mkdir /u01/arch  修改数据库归档日志的路径参数alter system set ... show parameter arch可查看归档日志文件  修改归档日志格式alter system set log_archive_format='%...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 92,348
精华内容 36,939
关键字:

归档日志查看