某天工作是使用外部表加载监听日志信息,观察并分析用户连接数变化趋势

按照eygle循序渐进oracle的教程一步步进行:

测试使用外部表先创建目录:

connect  / as sysdba

create(replace) directory sqldr as 'E:\app\john.tam\oradata\sqldr';

SQL> select * from dba_directories where directory_name =

'SQLDR';

OWNER DIRECTORY_

DIRECTORY_PATH

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

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

SYS SQLDR E:\app\john.tam\oradata\sqldr

然后可以创建外部表了,下面是流程:

创建指向监听器日志目录的Driectory:

SQL> select * from dba_directories where directory_name =

'SQLDR';

OWNER DIRECTORY_

DIRECTORY_PATH

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

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

SYS SQLDR

E:\app\john.tam\oradata\sqldr

SQL> create or replace directory

LISTENER_LOG

2 as

'E:\app\john.tam\product\11.2.0\dbhome_1\NETWORK\log'

3 /

SQL> select * from dba_directories where

DIRECTORY_NAME='LISTENER_LOG';

OWNER DIRECTORY_

DIRECTORY_PATH

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

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

SYS LISTENER_L

E:\app\john.tam\product\11.2.0

OG

\dbhome_1\NETWORK\log

创建外部表:

创建指向监听器日志的外部表:

SQL> CREATE TABLE listener_log(text VARCHAR2(4000))

2 ORGANIZATION

EXTERNAL (

3 TYPE oracle_loader

4 DEFAULT DIRECTORY listener_log

5 ACCESS PARAMETERS (

6 RECORDS DELIMITED BY NEWLINE

7 NOBADFILE

8 NOLOGFILE

9 NODISCARDFILE

10 )

11 LOCATION

('listener.log')

12 )

13 REJECT LIMIT UNLIMITED

14

/

Table created.

查询外部表

现在可以通过SQL查询和访问外部表的数据了:(监听日志共190000行,但12月份的信息都有19000以上行)

SQL> set pagesize 99

SQL> select * from listener_log where rownum

< 12;

select * from listener_log where rownum < 12

*

ERROR at

line 1:

ORA-29913: error in executing ODCIEXTTABLEFETCH callout

ORA-29400:

data cartridge error

KUP-04020: found record longer than buffer size

supported, 524288,

in

E:\app\john.tam\product\11.2.0\dbhome_1\NETWORK\log\listener.log

数据量太大,表内容不能显示。

其实这是因为导入的txt文本没用按格式换行。系统默认一行来处理,数据量当然太大

现抽取10年12月1日的信息生成表:

创建指向监听器日志目录的Driectory:

SQL> create or replace directory

LISTENER121_LOG

2 as

'E:\app\john.tam\product\11.2.0\dbhome_1\NETWORK\log'

3 /

SQL> select * from dba_directories where

DIRECTORY_NAME='LISTENER121_LOG';

OWNER DIRECTORY_

DIRECTORY_PATH

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

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

SYS LISTENER_L

E:\app\john.tam\product\11.2.0

OG

\dbhome_1\NETWORK\log

创建外部表:

创建指向监听器日志的外部表:

SQL> CREATE TABLE listener_log(text VARCHAR2(4000))

2 ORGANIZATION

EXTERNAL (

3 TYPE oracle_loader

4 DEFAULT DIRECTORY

listener121_log

5 ACCESS PARAMETERS (

6 RECORDS DELIMITED BY

NEWLINE

7 NOBADFILE

8 NOLOGFILE

9 NODISCARDFILE

10 )

11

LOCATION ('listener121.log')

12 )

13 REJECT LIMIT

UNLIMITED

14 /

Table created.

这次的查询就成功了。

Oracle 外部表加载监听日志,使用外部表访问监听日志相关推荐

  1. CC00053.pbpositions——|HadoopPB级数仓.V11|——PB数仓.v11|核心交易分析|DIM层建表|加载数据|

    一.DIM层建表加载数据:DIM层建表加载数据概述 ### --- 首先要确定哪些是事实表.哪些是维表.绿色的是事实表,灰色的维表~~~ 用什么方式处理维表,每日快照.拉链表? ~~~ 小表使用每日快 ...

  2. hive外部表改为内部表_3000字揭秘Greenplum的外部数据加载——外部表

    外部表是greenplum的一种数据表,它与普通表不同的地方是:外部表是用来访问存储在greenplum数据库之外的数据.如普通表一样,可使用SQL对外部表进行查询和插入操作.外部表主要用于Green ...

  3. hive内部表和外部表的区别_3000字揭秘Greenplum的外部数据加载——外部表

    外部表是greenplum的一种数据表,它与普通表不同的地方是:外部表是用来访问存储在greenplum数据库之外的数据.如普通表一样,可使用SQL对外部表进行查询和插入操作.外部表主要用于Green ...

  4. Hive外部分区表加载flume打到hdfs上文件,读不到.tmp文件

    摘要 flume打到hdfs上时,按照文件大小生成文件,在达到指定大小之前数据都是以.tmp文件形式保存在hdfs上,hive外部表也会加载这些文件,但是当文件完成后.tmp会消失,这时候hive会报 ...

  5. html页面判断其他div为空,将外部html加载到div中 - 页面加载然后变为空白

    我确信这将会变成一件愚蠢的事情,但是自从我成为JavaScript noob以来,这里就变成了一件愚蠢的事情.将外部html加载到div中 - 页面加载然后变为空白 我想外部HTML内容加载到我的索引 ...

  6. 3springboot:springboot配置文件(外部配置加载顺序、自动配置原理,@Conditional)

    1.外部配置加载顺序 SpringBoot也可以从以下位置加载配置: 优先级从高到低 高优先级的配置覆盖低优先级的配置,所有的配置会形成互补配置  1.命令行参数 所有的配置都可以在命令行上进行指定 ...

  7. 配置文件加载位置||外部配置加载顺序||自动配置原理

    配置文件加载位置 SpringBoot会从这四个位置全部加载主配置文件:互补配置: 外部配置加载顺序 自动配置原理 1.自动配置原理: 1).SpringBoot启动的时候加载主配置类,开启了自动配置 ...

  8. Spring boot外部配置加载顺序

    外部配置加载顺序 Spring boot 可以从以下位置加载配置 优先级从高到低 高优先级的配置,覆盖低优先级的配置 所有的配置,会形成互补配置 官网,给出了17个位置 这里,只介绍常用的11个位置 ...

  9. SpringBoot_配置-外部配置加载顺序

    接下来我们再来看SpringBoot的一个特点,外部配置的加载顺序,也就是说,SpringBoot我们要写一些配置,配置可以写在我们的配置文件,application.properties,放到类路径 ...

最新文章

  1. Python打造最强表白程序
  2. local reference table overflow 内存泄露
  3. C#调用ArcGIS REST服务
  4. PAT_B_1003_Java(20分)
  5. cuda、cudnn相关问题链接
  6. #20175201 实验五 网络编程与安全
  7. [react] 在React中声明组件时组件名的第一个字母必须是大写吗?为什么?
  8. java Switch里面的类型问题
  9. python itertools.permutations_如何理解Python itertools.permutations中的全排列算法?
  10. TCP粘包问题的解决方案01——自定义包体
  11. Linux/Unix IO多路复用之select网络编程(含源码)
  12. 看清喽别迷糊 英特尔本CPU型号之乱
  13. eclipse引入php源包
  14. 进军生物计算!百度发布飞桨螺旋桨PaddleHelix
  15. centos 7下搭建wiki系统
  16. nofollow标签的写法与作用
  17. 爬虫初学——爬取京东商品的评论(二)
  18. DiskPart使用方法(ZT)
  19. Python-练习 5 更多变量和打印
  20. HTML5网页好看的一些特效

热门文章

  1. 汇编 第二章 寄存器
  2. 遍历enum(连续型)
  3. SQL Agent服务无法启动如何破
  4. 用SqlConnectionStringBuilder修改连接超时时间
  5. UILabel-IOS开发
  6. 关于updatepanel回传之后JS失效问题
  7. ffmpeg屏幕推流
  8. SurfaceFlinger 和 WindowManager
  9. Gstreamer 搭建RTSP服务器(九)
  10. Android REMOTE_SUBMIX原理(九)