Oracle怎樣方便地查看警示日誌錯誤

來源:互聯網
上載者:User

標籤:style   blog   http   io   strong   檔案   for   2014   

由於警示記錄檔很大,而每天都應該查看警示日誌(查看有無“ORA-”,Error”,“Failed”等出錯資訊),故想找到一種比較便捷的方法,查看當天警示日誌都有哪些錯誤。

在網上查了幾天的資料,嘗試綜合清除警示日誌內容及建外部表格的方式來解決這一問題。

一:備份並清除警示日誌內容

將每天的警示記錄備份好,然後進行清除。

1:備份警示日誌

在$ORACLE_HOME/SID/bdump/   目錄下,

按日期備份alert_ORACLE_你的執行個體名.LOG這個檔案,如:alert_ORACLE_orcl_201408111639_bak.LOG。

2:清除日誌內容

開啟警示記錄檔,用true > 檔案名稱 可清除掉裡面的內容

 

 

具體樣本:

假如,我現在第一次進行該設定,我先把現有的警示日誌進行備份,如:

 

--備份檔案名稱:今天16點24分前的警示日誌資訊

 

[[email protected] bdump]$ cp alert_orcl2.log alert_orcl2_before_201408111624_bak.log

-清空警示日誌

[[email protected] bdump]$ true > alert_orcl2.log

現在警示日誌是空的。

切換下歸檔日誌,檢查警示日誌裡是否出現了新內容:

 


SQL> alter system switch logfile;

 

System altered.

 

則現在alert_orcl2.log記錄的是2014年8月11日16點24分後至你下次對警示日誌進行備份,截取前的資訊。

 

二:建外部表格查看警示日誌錯誤

 如果已建立了一個使用者,並賦相應的許可權,所以直接建立目錄對象並建立外部表格就可以了。

1.建立目錄對象SQL> conn test / 123

 

Connected.

 

SQL> create directory bdump as ‘/oracle/u01/app/oracle/admin/db2/bdump‘;

 

Directory created.
 

 


2.建立外部表格SQL> create table alert_log(

 

text varchar2(400)

 

)organization external

 

(type oracle_loader

 

default directory bdump

 

access parameters

 

(records delimited by newline

 

)location(‘alert_db2.log‘)

 

);
 

 


3.測試首先查看能否查到alert_db2.log的內容

 

SQL> select * from alert_log where rownum < 10;

 

TEXT

 

--------------------------------------------------------------------------------

 

Thu Jun 11 00:51:46 2009

 

Starting ORACLE instance (normal)

 

Cannot determine all dependent dynamic libraries for /proc/self/exe

 

Unable to find dynamic library libocr10.so in search paths

 

RPATH = /ade/aime1_build2101/oracle/has/lib/:/ade/aime1_build2101/oracle/lib/:/a

 

de/aime1_build2101/oracle/has/lib/:

 

LD_LIBRARY_PATH is not set!

 

The default library directories are /lib and /usr/lib

 

Unable to find dynamic library libocrb10.so in search paths

 

Unable to find dynamic library libocrutl10.so in search paths

 

9 rows selected.
 

 


測試成功

 

然後我們測試查警示資訊’ORA-%’

 

SQL> select * from alert_log where text like ‘ORA-%‘;

 

TEXT

 

--------------------------------------------------------------------------------

 

ORA-00202: control file: ‘/oracle/u01/app/oracle/product/10.2.0/db2/dbs/cntrldb2

 

.dbf‘

 

ORA-27037: unable to obtain file status

 

ORA-205 signalled during: ALTER DATABASE   MOUNT...

 

ORA-00301: error in adding log file ‘/home/oracle/oracle/oradata/testdb/redo01.l

 

og‘ - file cannot be created

 

ORA-27040: file create error

 

ORA-1501 signalled during: CREATE DATABASE db2

 

ORA-00200: control file could not be created

 

TEXT

 

--------------------------------------------------------------------------------

 

ORA-00202: control file: ‘/oracle/u01/app/oracle/product/10.2.0/db2/dbs/cntrldb2

 

.dbf‘

 

ORA-27038: created file already exists

 

ORA-1501 signalled during: CREATE DATABASE db2

 

ORA-00200: control file could not be created

 

ORA-00202: control file: ‘/oracle/u01/app/oracle/product/10.2.0/db2/dbs/cntrldb2

 

.dbf‘

 

ORA-27038: created file already exists

 

ORA-1501 signalled during: CREATE DATABASE db2
 

 

 --假如,你的警示記錄檔只包含今天的資訊(可以通過備份並清除警示日誌內容實現),則通過外部表格可以查到當天產生了哪些錯誤。

--本篇文章參考自:http://blog.csdn.net/lpioneer/article/details/5935533,

http://edu.cnzz.cn/200907/654584d4.shtml

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.