oracle 外部表查alter日志

--创建文件夹,路径是alter日志的路径
create or replace directory data_dir as
‘/u01/app/oracle/diag/rdbms/orcl/orcl/trace‘;

--创建外部表
create table alert_log(
       text_line varchar2(225)
)
organization external
(
       TYPE ORACLE_LOADER
       DEFAULT DIRECTORY DATA_DIR
       ACCESS PARAMETERS
       (
              RECORDS DELIMITED BY NEWLINE
              FIELDS
       )
       LOCATION
       (
              ‘alert_orcl.log‘
       )
);

--查询数据库启动时间sql
select to_char(LAST_TIME) shutdown,
       to_char(start_time) starup,
       round((start_time - LAST_TIME) * 24 * 60, 2) mins_down,
       round((LAST_TIME - lag(start_time) over(order by r)), 2) days_up,
       case
         when (lead(r) over(order by r) is null) then
          round((sysdate - start_time), 2)
       end days_still_up
  from (select r,
               to_date(last_time,
                       ‘Dy Mon DD HH24:MI:SS YYYY‘,
                       ‘NLS_DATE_LANGUAGE = American‘) LAST_TIME,
               to_date(start_time,
                       ‘Dy Mon DD HH24:MI:SS YYYY‘,
                       ‘NLS_DATE_LANGUAGE = American‘) start_time
          from (select r,
                       text_line,
                       lag(text_line, 1) over(order by r) start_time,
                       lag(text_line, 2) over(order by r) last_time
                  from (select rownum r, text_line
                          from alert_log
                         where text_line like ‘___ ___ __ __:__:__ 20__‘
                            or text_line like ‘Starting ORACLE instance %‘))
         where text_line like ‘Starting ORACLE instance %‘);
时间: 2025-01-02 13:43:45

oracle 外部表查alter日志的相关文章

如何利用Oracle外部表导入文本文件的数据

同事最近在忙数据一致性比对工作,需要对不同文本文件中的数据进行比对,有的文件较大,记录较多,如果用普通的文本编辑器打开的话,很显然,会很卡,甚至打不开. 基于此,可将该文本文件的数据导入到数据库中,在集合的层面进行比对. 那么如何将文本文件的数据导入到数据库中呢?在这里,主要利用了Oracle的外部表特性. Oracle外部表支持两种类型的驱动:一种是ORACLE_LOADER,外部表的数据必须来源于文件文件,另一种则是ORACLE_DATAPUMP,外部表的数据必须是二进制dump文件,该du

Oracle外部表详解(转载)

(外部表创建主要注意创建目录访问权限问题.目录路径格式无空格等不相关字符,即必须是当前表访问用户可以访问:关于表中行数的限制问题,如果不加限制注意添加reject limit unlimited:表中数据格式与创建表时access parameters中的定义需保持同步,适当用skip=1) 外部表概述 外部表只能在Oracle 9i之后来使用.简单地说,外部表,是指不存在于数据库中的表.通过向Oracle提供描述外部表的元数据,我们可以把一个操作系统文件当成一个只读的数据库表,就像这些数据存储

ORACLE外部表总结

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

Oracle外部表

1.外部表简介 外部表是Oracle9i之后来使用的.外部表是一类表的定义存在于数据库而数据不存在于数据库的表. 在数据库操作过程中可以对外部表进行select,join,sort操作也可以对外部表创建视图和同义词.但是不能在外部表上进行DML操作和创建索引. 外部表提供两种访问驱动.一种ORACLE_LOADER另一种ORACLE_DATAPUMP.默认驱动是ORACLE_LOADER. ORACLE_LOADER驱动从外部文件中读数据.ORACLE_LOADER创建外部表的语法和SQL*Lo

oracle 外部表

语法: create table 表名( 列名1,列名2,...... ) organization external  ###说明创建外部表 ( type 访问类型            ###一般是 ORACLE_LOADER ,ORACLE_DATAPUMP default directory   路径名   ####指定默认目录对象 access parameter (        ###数据源文件与表中行之间的映射关系 records delimited by 设置分隔符    ##

使用ORACLE外部表装载复杂数据

原文:http://www.oracle.com/technetwork/issue-archive/2013/13-jan/o13asktom-1886639.html I am using SQL Loader to load data into tables from a flat file. Some sample data in the file might be: 我打算使用SQL Loader装载来自平面文件数据.样例数据如下: 12,smith,[email protected]

Oracle外部表的管理和应用

外部表作为oracle的一种表类型,虽然不能像普通库表那么应用方便,但有时在数据迁移或数据加载时,也会带来极大的方便,有时比用sql*loader加载数据来的更为方便,下面就将建立和应用外部表的命令和操作记录如下: --创建存放文件的directory对象 sqlplus username/[email protected] create directory ex_data as '/home/ex_data/'; --创建外部表 CREATE TABLE tab1_ex ( C1 VARCHA

oracle 外部表之 sqlldr 生成

oracle的导入工具,速度挺快,这里记一下外部表的使用,通常外部表要记的语法太多例如: CREATE TABLE PROD_MASTER ( "EMPNO" NUMBER, "ENAME" VARCHAR2(50), "HIREDATE" DATE, "DEPTNO" NUMBER ) ORGANIZATION external ( TYPE oracle_loader DEFAULT DIRECTORY ext_table

oracle 查看表空间以及日志文件等系统文件

--1.查看表空间的名称及大小 SELECT t.tablespace_name, round(SUM(bytes / (1024 * 1024)), 0) ts_size FROM dba_tablespaces t, dba_data_files d WHERE t.tablespace_name = d.tablespace_name GROUP BY t.tablespace_name; --2.查看表空间物理文件的名称及大小  SELECT tablespace_name, file_