首页 » ORACLE, 系统相关 » linux 快速定位alert 日志中出错信息

linux 快速定位alert 日志中出错信息

alert 日志记录了数据库的很多重要信息,要养成时常检查alert日志的习惯,但如果日志很大vi打开翻来覆去找着麻烦,怎么做的可以查错呢?

看我的测试

[oracle@ahjcyl-db bdump]$ tail -n 1000 alert_ahjcyl.log |grep ORA-
ORA-12012: error on auto execute of job 22
ORA-00054: resource busy and acquire with NOWAIT specified
ORA-06512: at "DOCTOR.SPL_SJPT_ARCHUSAGE", line 18
ORA-06512: at "DOCTOR.SPL_SJPT_DAYLY", line 34
ORA-06512: at line 1

---能看到一错误信息,tail -n xx是最后的多少行通过管道符传给grep查看,但是看的摸不到头脑,要是能显示错误信息行再分别附带出错后下面的几行应该更好,再往下看

[oracle@ahjcyl-db bdump]$ tail -n 10000 alert_ahjcyl.log |grep -A 6 ORA-

WARNING: inbound connection timed out (ORA-3136)
Fri Sep  9 18:01:34 2011
WARNING: inbound connection timed out (ORA-3136)
Fri Sep  9 18:05:29 2011
Thread 1 advanced to log sequence 2566 (LGWR switch)
  Current log# 6 seq# 2566 mem# 0: /oracle/oradata/ahjcyl/redo06_02.log
  Current log# 6 seq# 2566 mem# 1: /oradata/ahjcyl/redo06_01.log
Fri Sep  9 20:14:54 2011
Thread 1 advanced to log sequence 2567 (LGWR switch)
--
ORA-1652: unable to extend temp segment by 128 in tablespace                 TEMP 
Fri Sep  9 22:18:55 2011
ORA-1652: unable to extend temp segment by 128 in tablespace                 TEMP 
Fri Sep  9 22:42:39 2011
ORA-1652: unable to extend temp segment by 128 in tablespace                 TEMP 
Sat Sep 10 01:03:00 2011
Starting control autobackup
Control autobackup written to DISK device
        handle '/oracle/flash_recovery_area/AHJCYL/autobackup/2011_09_10/o1_mf_s_761446980_76nkp55y_.bkp'
Sat Sep 10 01:03:05 2011
ALTER SYSTEM ARCHIVE LOG
--
ORA-12012: error on auto execute of job 22
ORA-00054: resource busy and acquire with NOWAIT specified
ORA-06512: at "DOCTOR.SPL_SJPT_ARCHUSAGE", line 18
ORA-06512: at "DOCTOR.SPL_SJPT_DAYLY", line 34
ORA-06512: at line 1
Wed Sep 14 13:02:18 2011
Thread 1 advanced to log sequence 2711 (LGWR switch)
  Current log# 6 seq# 2711 mem# 0: /oracle/oradata/ahjcyl/redo06_02.log
  Current log# 6 seq# 2711 mem# 1: /oradata/ahjcyl/redo06_01.log
Wed Sep 14 13:13:49 2011
Thread 1 advanced to log sequence 2712 (LGWR switch)

--是不是看的有点明确了,如果想要出错信息前的几行呢?再往下看
[oracle@ahjcyl-db bdump]$ tail -n 10000 alert_ahjcyl.log |grep -B 6 ORA-

  Current log# 1 seq# 2564 mem# 1: /oradata/ahjcyl/redo01_01.log
Fri Sep  9 18:00:14 2011
Thread 1 advanced to log sequence 2565 (LGWR switch)
  Current log# 2 seq# 2565 mem# 0: /oracle/oradata/ahjcyl/redo02_02.log
  Current log# 2 seq# 2565 mem# 1: /oradata/ahjcyl/redo02_01.log
Fri Sep  9 18:01:34 2011
WARNING: inbound connection timed out (ORA-3136)
Fri Sep  9 18:01:34 2011
WARNING: inbound connection timed out (ORA-3136)
--
  Current log# 6 seq# 2566 mem# 1: /oradata/ahjcyl/redo06_01.log
Fri Sep  9 20:14:54 2011
Thread 1 advanced to log sequence 2567 (LGWR switch)
  Current log# 4 seq# 2567 mem# 0: /oracle/oradata/ahjcyl/redo04_02.log
  Current log# 4 seq# 2567 mem# 1: /oradata/ahjcyl/redo04_01.log
Fri Sep  9 22:18:55 2011
ORA-1652: unable to extend temp segment by 128 in tablespace                 TEMP 
Fri Sep  9 22:18:55 2011
ORA-1652: unable to extend temp segment by 128 in tablespace                 TEMP 
Fri Sep  9 22:42:39 2011
ORA-1652: unable to extend temp segment by 128 in tablespace                 TEMP 

--但如果要是看数据的前\后几行呢 a+b ,再往下看
[oracle@ahjcyl-db bdump]$ tail -n 10000 alert_ahjcyl.log |grep -C 6 ORA-

Control autobackup written to DISK device
        handle '/oracle/flash_recovery_area/AHJCYL/autobackup/2011_09_08/o1_mf_s_761322189_76jqtf7g_.bkp'
Completed: alter database add logfile group 2 ('/oracle/oradata/ahjcyl/redo02_02.log','/oradata/ahjcyl/redo02_01.log') size 200m
Thu Sep  8 14:24:03 2011
alter database drop logfile group 3
Thu Sep  8 14:24:03 2011
ORA-1624 signalled during: alter database drop logfile group 3...
Thu Sep  8 14:24:50 2011
alter database drop logfile group 3
Thu Sep  8 14:24:50 2011
Starting control autobackup
Control autobackup written to DISK device
        handle '/oracle/flash_recovery_area/AHJCYL/autobackup/2011_09_08/o1_mf_s_761322290_76jqxljw_.bkp'
--
  Current log# 1 seq# 2564 mem# 1: /oradata/ahjcyl/redo01_01.log
Fri Sep  9 18:00:14 2011
Thread 1 advanced to log sequence 2565 (LGWR switch)
  Current log# 2 seq# 2565 mem# 0: /oracle/oradata/ahjcyl/redo02_02.log
  Current log# 2 seq# 2565 mem# 1: /oradata/ahjcyl/redo02_01.log
Fri Sep  9 18:01:34 2011
WARNING: inbound connection timed out (ORA-3136)
Fri Sep  9 18:01:34 2011
WARNING: inbound connection timed out (ORA-3136)
Fri Sep  9 18:05:29 2011
Thread 1 advanced to log sequence 2566 (LGWR switch)
  Current log# 6 seq# 2566 mem# 0: /oracle/oradata/ahjcyl/redo06_02.log
  Current log# 6 seq# 2566 mem# 1: /oradata/ahjcyl/redo06_01.log
Fri Sep  9 20:14:54 2011
Thread 1 advanced to log sequence 2567 (LGWR switch)
  Current log# 4 seq# 2567 mem# 0: /oracle/oradata/ahjcyl/redo04_02.log
  Current log# 4 seq# 2567 mem# 1: /oradata/ahjcyl/redo04_01.log
Fri Sep  9 22:18:55 2011
ORA-1652: unable to extend temp segment by 128 in tablespace                 TEMP 
Fri Sep  9 22:18:55 2011
ORA-1652: unable to extend temp segment by 128 in tablespace                 TEMP 
Fri Sep  9 22:42:39 2011
ORA-1652: unable to extend temp segment by 128 in tablespace                 TEMP 
Sat Sep 10 01:03:00 2011
Starting control autobackup
Control autobackup written to DISK device
        handle '/oracle/flash_recovery_area/AHJCYL/autobackup/2011_09_10/o1_mf_s_761446980_76nkp55y_.bkp'
Sat Sep 10 01:03:05 2011
ALTER SYSTEM ARCHIVE LOG

--没错就是grep -C 具体解释问男人吧,man grep

打赏

目前这篇文章有1条评论(Rss)评论关闭。

  1. Lakita Racioppi | #1
    2011-12-21 at 06:36

    I simply couldn’t leave your website before suggesting that I extremely loved the usual info an individual supply for your visitors? Is gonna be again often in order to check out new posts.