如何使用外部表管理Oracle的告警日志

Oracle 告警日志时DBA维护数据库经常需要关注的一部分内容。然而告警日志以文本文件,按时间的先后顺序不断累积的形式来存储,久而

久之,势必造成告警日志的过大,难于维护和查找相关的信息。使用外表表方式来管理告警日志将大大简化维护工作量,也更直关的获取所需的

信息。

有关外部表的使用请参考:Oracle 外部表

一、告警日志的内容

消息和错误的类型(Types of messages and errors)

ORA-600内部错误(ORA-600 internal errors that need immediate support from Oracle's customer support )'

ORA-1578块损坏错误(ORA-1578 block corruption errors that require recovery)

ORA-12012(作业队列错误(ORA-12012 job queue errors)

实例启动关闭,恢复等信息(STARTUP & SHUTDOWN, and RECOVER statement execution messages)

特定的DDL命令(Certain CREATE, ALTER, & DROP statements )

影响表空间,数据文件及回滚段的命令(Statements that effect TABLESPACES, DATAFILES, and ROLLBACK SEGMENTS )

可持续的命令被挂起(When a resumable statement is suspended )

LGWR不能写入到日志文件(When log writer (LGWR) cannot write to a member of a group )

归档进程启动信息(When new Archiver Process (ARCn) is started )

调度进程的相关信息(Dispatcher information)

动态参数的修改信息(The occurrence of someone changing a dynamic parameter)

二、建立外部表

1.查看后台日志路径

sys@ORCL> show parameter %b%_dump_dest   --此可以省略,在后面直接用脚本cre_ext_tb.sql 实现

NAME                                 TYPE        VALUE

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

background_dump_dest                 string      /u01/oracle/admin/orcl/bdump

2.创建用户并赋予特定的权限,并创建数据库目录

sys@ORCL> create user usr1 identified by usr1    --创建帐户usr1

 2  temporary tablespace temp

 3  default tablespace users

 4  quota unlimited on users;

sys@ORCL> grant connect,resource to usr1;       --为帐户usr1授予connect,resource角色

sys@ORCL> grant create any directory to usr1;   --为帐户usr1授予创建目录的权限

sys@ORCL> conn usr1/usr1                        --使用usr1连接数据库

查看本栏目更多精彩内容:http://www.bianceng.cnhttp://www.bianceng.cn/database/Oracle/

时间: 2025-01-29 20:39:21

如何使用外部表管理Oracle的告警日志的相关文章

使用外部表管理Oracle 告警日志(ALAERT_$SID.LOG)

--================================================ -- 使用外部表管理Oracle 告警日志(ALAERT_$SID.LOG) --================================================       Oracle 告警日志时DBA维护数据库经常需要关注的一部分内容.然而告警日志以文本文件,按时间的先后顺序不断累积的形式来存储,久而 久之,势必造成告警日志的过大,难于维护和查找相关的信息.使用外表表方式来

Oracle的告警日志之v$diag_alert_ext视图

Oracle的告警日志之v$diag_alert_ext视图   最近由于自己写的一个job老是报错,找不出来原因,数据库linux的terminal由于安全原因不让连接,因此告警日志就没有办法阅读,没有办法就想想其它的办法吧,比如采用外部表的形式来阅读告警日志就是一个不错的办法. 告警日志的重要性就不多说了.... 实验环境 本次所有的实验环境是Oracle Database 11g Enterprise Edition Release 11.2.0.3.0 - 64bit Productio

归档—监控ORACLE数据库告警日志

ORACLE的告警日志里面包含许多有用的信息,尤其是一些ORACLE的ORA错误信息,所以有必要及时归档.监控数据库告警日志的ORA错误,及时提醒数据库管理员DBA处理这些错误信息,那么我们首先来看看告警日志的内容片断: Thread 1 advanced to log sequence 37749 (LGWR switch) Current log# 6 seq# 37749 mem# 0: /u01/oradata/SCM2/redo06.log Thu Jun 27 15:02:30 20

Oracle中创建临时表、外部表和分区表实例

临时表 在Oracle中,临时表是"静态"的,它与普通的数据表一样只需要一次创建,其结构从创建到删除的整个期间都是有效的.相对于其他类型的表,临时表只有在用户实际向表中添加数据时,才会为其分配空间,并且分配的空间来自临时表空间.这就避免了与永久对象的数据争用存储空间. 创建临时表的语法如下: CREATE GLOBAL TEMPORARY TABLE table_name( column_name data_type,[column_name data_type,...] )ON CO

ORACLE外部表总结

外部表介绍   ORACLE外部表用来存取数据库以外的文本文 件(Text File)或ORACLE专属格式文件.因此,建立外部表时不会产生段.区.数据块等存储结构,只有与表相关的定义放在数据字典中.外部表,顾名思义,存 储在数据库外面的表.当存取时才能从ORACLE专属格式文件中取得数据,外部表仅供查询,不能对外部表的内容进行修改(INSERT.UPDATE. DELETE操作).不能对外部表建立索引.因为创建索引就意味着要存在对应的索引记录.而外部表其实在没有存储在数据库中.故在外部是无法建

Oracle 外部表

--================= -- Oracle 外部表 --=================       外部表只能在Oracle 9i 之后来使用.简单地说,外部表,是指不存在于数据库中的表.通过向Oracle提供描述外部表的元数据,我们 可以把一个操作系统文件当成一个只读的数据库表,就像这些数据存储在一个普通数据库表中一样来进行访问.外部表是对数据库表的延伸.   一.外部表的特性     位于文件系统之中,按一定格式分割,如文本文件或者其他类型的表可以作为外部表.     对

ORACLE告警日志文件

告警日志介绍   告警日志文件是一类特殊的跟踪文件(trace file).告警日志文件命名一般为alert_<SID>.log,其中SID为ORACLE数据库实例名称.数据库告警日志是按时间顺序记录message和错误信息.   告警日志位置 在ORACLE 10g中,BACKGROUND_DUMP_DEST参数确定了告警日志的位置,但是告警日志的文件名无法修改,告警日志的名称 为:alert_<SID>.log ,其中<SID>是实例的名称.BACKGROUND_D

巧用外部表避免大量的insert

昨天开发咨询我一个问题,希望我对下面的语句进行调优. 语句类似下面的形式 SELECT  subscriber_no  FROM SUBSCRIBER S WHERE SUBSCRIBER_TYPE = 'RM'              and CONV_RUN_NO in (20, 21, 22, 23)              and not EXISTS (SELECT s.AGREEMENT_NO                        FROM SERVICE_AGREEME

Oracle中如何管理外部表

外部表是表结构被存放在数据字典,而表数据被存放在OS文件的表.通过使用外部表,不仅可以在数据库中查询OS文件的数据,还可以使用INSERT方式将OS文件数据装载到数据库中,从而实现SQL*Loader所提供的功能.建立外部表后,可以查询外部表的数据,在外部表上执行连接查询,或对外部表的数据进行排序.需要注意,外部表上不能执行DML修改,也不能在外部表上建立索引. 1.建立外部表 --准备工作: [oracle@solaris10 ~]$mkdir /export/home/oracle/dat