Oracle 数据库采用外部表监控查看分析 alert 告警

Oracle 数据库采用外部表监控查看分析 alert 告警

一、外部表相关参数说明

1、organization external

关键字,表明定义的表为外部表。

2、type

外部表的类型

oracle_loader

定义外部表的缺省方式,只能只读方式实现文本数据的装载。

oracle_datapump

支持对数据的装载与卸载,数据文件必须为二进制dump文件。可以从外部表提取数据装载到内部表,也可以从内部表卸载数据作为二进制文件填充到外部表。

3、default directory

缺省的目录指明了外部文件所在的路径

4、location

定义了外部表的位置

5、access parameters

描述如何对外部表进行访问

records

关键字后定义如何识别数据行

delimited by 'xxx'

换行符,常用newline定义换行,并指明字符集。对于特殊的字符则需要单独定义,如特殊符号,可以使用ox'十六位值',例如tab(/t)的十六位是9,则delimitedby0x'09';cr(/r)的十六位是d,那么就是delimitedby0x'0d'。

skip x

跳过x行数据,有些文件中第一行是列名,需要跳过第一行,则使用skip 1。

fields

关键字后定义如何识别字段,常用的如下:

fields:terminated by 'x'

字段分割符。

enclosed by 'x'

字段引用符,包含在此符号内的数据都当成一个字段。例如一行数据格式如:"abc","a""b,""c,"。使用参数terminated by ',' enclosed by '"'后,系统会读到两个字段,第一个字段的值是abc,第二个字段值是a"b,"c,。

lrtrim

删除首尾空白字符。

missing field values are null

某些字段空缺值都设为null。对于字段长度和分割符不确定且准备用作外部表文件,可以使用ultraedit、editplus等来进行分析测试,如果文件较大,则需要考虑将文件分割成小文件并从中提取数据进行测试。

6、fields terminated by ","

描述字段的终止符

7、reject limit unlimited

描述允许的错误数,此处为无限制

二、采用外部表监控查看分析 alert 告警日志

我们在自己的windows电脑下做的测试(数据库版本是19.3),测试外部表访问警告日志文件,首先需要创建一个Oracle目录(路径为告警alert日志所在位置)

create or replace directory alert_dir as 'C:\app\db_base\diag\rdbms\orcl\orcl\trace';

查看创建的目录

col directory_path for a50

select * from dba_directories;

给目录授权

grant read,write on directory alert_dir to public;

然后创建一个外部表

create table alert_log(text varchar2(4000))

organization external

(

type oracle_loader

default directory alert_dir

access parameters

(

records delimited by newline

nobadfile

nodiscardfile

nologfile

)

location('alert_orcl.log')

)

reject limit unlimited;

之后我们就可以通过外部表来查询警告日志的内容

select * from alert_log;

需要查看数据库中曾经出现过的ORA-错误,那么可以执行如下查询:

select * from alert_log where text like 'ORA-%';

SELECT * FROM alert_log where text LIKE 'Errors%';

相关推荐
苦学编程的谢22 分钟前
Redis_8_List
数据库·redis·缓存
曹天骄38 分钟前
阿里云 DCDN → CDN 无缝切换教程(以 example.com 为例)
数据库·阿里云·云计算
workflower2 小时前
软件工程-练习
数据库·需求分析·个人开发·极限编程·结对编程
扶尔魔ocy2 小时前
【QT自定义2D控件】QGraphics绘制仪表盘
数据库·qt·microsoft
yookay zhang2 小时前
达梦数据库监听进程
网络·数据库·oracle
Archy_Wang_12 小时前
centos7的mysql做定时任务备份所有数据库
数据库·mysql
Java 码农3 小时前
MySQL基础操作案例设计
数据库·mysql
友友马3 小时前
『 QT 』按钮类控件属性解析
开发语言·数据库·qt
jarreyer3 小时前
【ubuntu离线安装Oracle 客户端】ldd /opt/oracle/instantclient_19_8/libclntsh.so
linux·ubuntu·oracle
vvw&3 小时前
如何在 Ubuntu 上安装 PostgreSQL
linux·运维·服务器·数据库·ubuntu·postgresql