数据库

 首页 > 数据库 > Oracle > ORACLE报警日志如何查看

ORACLE报警日志如何查看

分享到:
【字体:
导读:
         摘要:ORACLE报警日志如何查看?目得:首先了解什么是外部表,与其它表的区别,建立一个简单的外部表(主要看操作过程),最后我们用外部表查看ORACLE报警日志  1.了解oracle外部表  外部表定义:结构被存放在数据字... SyntaxHighlighter.all(); ...

ORACLE报警日志如何查看

ORACLE报警日志如何查看?
 
目得:首先了解什么是外部表,与其它表的区别,建立一个简单的外部表(主要看操作过程),最后我们用外部表查看ORACLE报警日志
  1.了解oracle外部表
  外部表定义:结构被存放在数据字典,而表数据被放在OS文件中的表
  作用:在数据库中查询OS文件的数据,还可以将OS文件数据装载到数据库中
  与其它表的区别:在外部表上不能执行DML操作,也不能在外部表上建索引,只能执行select操用   www.2cto.com  
  2.建一个简单的外部表1.建一个OS上的文件
  因为外部表主要是查看OS上的文件,首先在OS上建一个文件
 
  mkdir -p /oracle/ext 
  vi /oracle/ext/ext.dat 
  10,20,30 
  40,50,60 
  70,80,90
  2.授予用户权限,并建立目录对象
  在此我们先建一个新用户
 
  create user test identified by “123” default tablespace test quota unlimited on test;
  用户授权
 
  SQL> grant create any directory to test;
  建立目录对象
 
  SQL> conn test / 123 
  Connected. 
  SQL> create directory ext as '/oracle/ext'; 
  Directory created.  www.2cto.com  
  3.建立外部表
SQL> create table exttable( 
  id number,name varchar2(10),i number 
  )organization external 
  (type oracle_loader 
  default directory ext 
  access parameters 
  (records delimited by newline 
  fields terminated by ',' 
  )location('ext.dat') 
  );
  4.测试
 
  SQL> select * from exttable; 
  ID NAME                I 
  ---------- ---------- ---------- 
  10 20                 30 
  40 50                 60 
  70 80                 90
  测试成功,可见在数据库中可以查询OS文件的数据
 
  2. 使用外部表查看oracle报警日志
  由于在上面实验中已建立了一个用户,并赋相应的权限,而且也有了OS文件(即报警文件alert_SID.log),所以在此直接建立目录对象并建立外部表就可以了。
 
  1.建立目录对象
 
   SQL> conn test / 123 
  Connected.  www.2cto.com   
  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 
  -------------------------------------------------------------------------------- 
  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!   www.2cto.com  
  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'   www.2cto.com  
  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
  测试成功,
  可见我们可以使用外部表来方便的查看ORACLE的报警信息.
 
 
作者 superdebug
ORACLE报警日志如何查看
分享到:
oracle中drop、delete及truncate区别简析
oracle中drop、delete及truncate区别简析 oracle中drop、delete及truncate区别简析   针对oracle中drop、delete及truncate三者的区别做如下说明:    1、delete及truncate都可以删除表中的数据,但是,和drop相比,前者只删除数据,并未改变表结构,而后者连表结构也进行了删除;    www.2cto.com   2、truncate比d...
Oracle 11G密码过期后修改方法
Oracle 11G密码过期后修改方法 由于Oracle11G的新特性所致,经常会遇到使用sqlplus登陆oracle数据库时提示“ORA-28002: 7 天之后口令将过期”等情况。 在Oracle 11G 创建用户时缺省密码过期限制是180天, 如果超过180天用户密码未做修改则该用户无法登录,提示“ORA-28001: the password has expired”。    密码过期后...
  •         php迷,一个php技术的分享社区,专属您自己的技术摘抄本、收藏夹。
  • 在这里……