程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> Oracle數據庫 >> Oracle數據庫基礎 >> 使用外部表訪問oracle告警日志的方法

使用外部表訪問oracle告警日志的方法

編輯:Oracle數據庫基礎

Oracle告警日志是我們經常見到的,下面就為您詳細介紹了通過使用Oracle外部表的方式訪問Oracle告警日志的方法,希望對您能夠有所幫助。

1、創建用戶、賦予權限

  1. SQL>create user checker identifIEd by passWord default tablespace users quota unlimited on users;  
  2.  
  3. SQL>grant connect,resource,create any directory to checker;  

2、創建目錄對象

  1. SQL>show parameter background_dump_dest;  
  2.  
  3. NAME                                 TYPE        VALUE  
  4. ------------------------------------ ----------- ------------------------------  
  5. background_dump_dest                 string      /u01/app/Oracle/orcl/bdump  
  6.  
  7. SQL> conn  checker/passWord  
  8.  
  9. SQL>create directory  bdump as '/u01/app/Oracle/orcl/bdump';  

3、創建外部表

  1. SQL> create table alert_log( text varchar2(400) )  
  2. organization external (type Oracle_loader  
  3. default directory bdump  
  4. Access parameters (records delimited by newline)  
  5. location('alert_orcl.log')); 

4、使用外部表查看Oracle告警日志

  1. SQL> select   text   from  alert_log;  //查看全部的告警日志  
  2.  
  3. SQL>select  text  from  alert_log  where  text like 'ORA-%';  //查看告警日志中的錯誤信息  
  4.  
  5. SQL> select * from (select text from alert_log order by rowid desc) where rownum <50;  //查看最近50行告警日志。  

擴展知識:

外部表就像是在數據庫中創建的一個視圖,數據庫中只存儲表的元數據,真正的記錄存放在操作系統上。對於外部表的使用有一些限制:

1、只能讀取外部表中的內容,不能對外部表進行DML操作,不能為其創建索引。

2、使用外部表必須使用目錄對象。

3、同一個操作系統數據文件只能使用一種分隔符,如逗號或分號。

4、刪除外部表時應遵循先刪除所有的外部表然後再刪除目錄對象的原則,如果直接刪除目錄對象,系統不會自動檢查它上面外部表,可能會造成外部表不可用。可以通過查詢dba_external_locations查詢系統當前所有的目錄對象以及相關的外部表,還會查詢出這些外部表所對應的操作系統文件的名字。

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved