`

使用Oracle外部表监听日志

阅读更多

--创建目录

create or replace directory LISTENER_LOG
  as '/opt/oracle/product/9.2.0/network/log'
/

 

--创建外部表

CREATE TABLE listener_log (text VARCHAR2(4000))
  ORGANIZATION EXTERNAL (
    TYPE oracle_loader
    DEFAULT DIRECTORY listener_log
    ACCESS PARAMETERS (
       RECORDS DELIMITED BY NEWLINE
       NOBADFILE
        NOLOGFILE
        NODISCARDFILE
    )
    LOCATION ('listener-hsboss.log')
  )
  REJECT LIMIT UNLIMITED
/

 

--类似的,可以查询连接数据库的应用等信息

SELECT DISTINCT SUBSTR (text,
                    INSTR (text, 'PROGRAM') + 8,
                     INSTR (SUBSTR (text, INSTR (text, 'PROGRAM') + 8),
                                 ')'
                                )
                        - 1
                   ) PROGRAM
       FROM (SELECT *
                FROM listener_log
                WHERE text LIKE '%PROGRAM%' AND ROWNUM < 1000000)
/

 

--通过“*”分隔符,可以将外部表进一步细化

CREATE TABLE listener_log
(
   ldate                DATE,
   connect_data         VARCHAR2(400),
   address_protocol     VARCHAR2(400),
   action               VARCHAR2(20),
   service_name         VARCHAR2(20),
   return_code          NUMBER(10)
)
ORGANIZATION EXTERNAL (
   TYPE oracle_loader
   DEFAULT DIRECTORY listener_log
   ACCESS PARAMETERS
   (
      RECORDS DELIMITED BY NEWLINE
      NOBADFILE
      NOLOGFILE
      NODISCARDFILE
      FIELDS TERMINATED BY "*" LRTRIM
      MISSING FIELD VALUES ARE NULL
      (
          ldate CHAR(30) DATE_FORMAT DATE MASK "DD-MON-YYYY HH24:MI:SS",
          connect_data,
          address_protocol,
          action,
          service_name,
          return_code
      )
   )
   LOCATION ('listener-hsboss.log')
)
REJECT LIMIT UNLIMITED
/

 

--类似的,其他信息都可以从这个外部表中查询得到,通过以下查询我们能够获得连接数据库的用户及主机等信息

set timing on
SELECT      HOST, COUNT (*)
    FROM (SELECT SUBSTR (connect_data,
                         INSTR (connect_data, 'HOST') + 5,
                           INSTR (SUBSTR (connect_data,
                                          INSTR (connect_data, 'HOST') + 5
                                         ),
                                  ')'
                                 )
                         - 1
                        ) HOST
            FROM (SELECT *
                    FROM listener_log
                   WHERE connect_data LIKE '%PROGRAM%' AND ROWNUM < 1000000))
GROUP BY HOST
ORDER BY 2
/

分享到:
评论

相关推荐

    Oracle监听器维护管理v1.1

    2. 外部表分析:通过创建外部表,可以直接在SQL查询中查看和分析日志。 3. perl脚本格式化:可以编写perl脚本来进一步处理和解析日志内容。 七、远程监听的攻击和防范 1. 添加远程监听配置:需谨慎设置,确保只允许...

    Oracle 数据库监听分析及其说明

    ### Oracle 数据库监听分析及其说明 #### 概述 Oracle 数据库监听器是数据库系统中的一个关键组件,它负责管理数据库实例与客户端应用程序之间的网络连接。通过监听特定的端口,监听器能够接收来自客户端的连接...

    oracle配置透明网关.rar

    这时,需要查看数据库日志、Oracle Net监听日志以及网关相关的跟踪文件进行诊断。 7. **版本兼容性**: "winx64_12102_gateways.zip" 提示这是针对Windows x64平台的Oracle 12c Release 2(12.1.0.2)的网关组件。...

    oracle 触发器实时调用java 中http接口

    在Oracle中,触发器由CREATE TRIGGER语句定义,它可以监听表上的特定操作。例如,一个INSERT触发器会在新的行被插入到表中时执行。触发器的代码可以访问新插入的行,并根据需要执行额外的操作,如日志记录、业务逻辑...

    oracle 12c 数据库 教程

    数据移动部分讲解了移动数据的架构,如SQL*Loader、数据泵、外部表等工具的使用。性能管理基础涉及到性能监视、内存组件管理、内存指导、动态性能视图和故障排除。最后,备份与恢复是数据库管理的重要环节,涵盖了闪...

    高性能动态SQL Oracle数据安全 Oracle 数据库的聚簇技术 等等

    将Excel数据导入Oracle通常需要先将数据转换为CSV格式,然后使用SQL*Loader或外部表来加载数据。 3. **设置时间间隔型数据**: 在Oracle 9i中,时间间隔类型(INTERVAL)用于存储时间间隔,如年、月、日、小时等。...

    Oracle DBA日常工作手册

    - **Oracle 数据文件、控制文件、联机日志及归档日志存放的文件系统或裸设备空间使用情况**: - 需要定期检查Oracle软件及其数据文件所在的文件系统或裸设备的空间使用情况,以确保有足够的空间供Oracle数据库正常...

    windows oracle 18c.txt

    5. **测试连接**:使用SQL*Plus或Oracle Enterprise Manager等工具连接数据库,验证安装是否成功。 #### 2.3 配置注意事项 - **环境变量**:确保ORACLE_HOME、ORACLE_SID等环境变量正确设置。 - **防火墙设置**:...

    ORACLE9i_优化设计与系统调整

    §2.4.1.6 理解监听日志中信息 50 §2.4.1.7 理解连接管理器信息 53 §2.4.2 跟踪文件( Trace File ) 53 §2.4.2.1 跟踪文件的命名: 54 §2.4.2.2 参数设置与初始化文件: 54 §2.4.2.3 在控制实用程序运行中设置...

    oracle 常用命令 TXT 最全的

    - 如果需要查询服务器的IP地址,可以考虑在SQL Plus外部使用操作系统命令(如Linux下的`ifconfig`或Windows下的`ipconfig`)。 以上是基于给定信息整理出的主要知识点及其解释。希望对理解和掌握Oracle数据库的...

    Oracle单机安装配置-华为内部文档

    - 使用Oracle Database Configuration Assistant (DBCA) 工具来创建数据库实例。 - 创建实例的过程中需要指定实例名称、数据文件存储位置等信息。 5. **关闭审计功能**: - Oracle数据库安装后,默认启用了审计...

    Oracle 架构全图 Oracle 架构全图

    外部表(External Tables)**:允许直接访问操作系统文件。 **7. 数据保护机制**: - **归档日志(Archive Logs)**:用于备份和恢复。 - **实例恢复(Instance Recovery)**:确保在故障后可以恢复到一致状态。...

    oracle数据库教程12c

    - **安装过程**:详细步骤说明如何安装12c Release 2 (12.2)版本,包括使用Oracle Universal Installer (OUI)进行图形化安装或通过静默模式安装。 - **配置指南**:指导用户如何进行数据库的基本配置,如设置监听器...

    oracle配置、远程备份还原教程.docx

    使用PLSQL工具连接Oracle服务器 - **问题**: PLSQL工具默认情况下不支持连接64位Oracle数据库,需要通过32位Oracle客户端进行连接。 - **解决方法**: 使用64位版本的PLSQL Developer可能会遇到配置问题导致无法...

    oracle10g文档.pdf

    - **外部表**:介绍了外部表的概念及其使用方法。 - **LogMiner**:详细讲解了LogMiner的功能及其使用场景。 - **DBVERIFY工具**:解释了DBVERIFY工具的作用及其使用方法。 - **DBNEWID工具**:介绍了DBNEWID工具的...

    吉林大学,Oracle,课堂记录完整版

    以上内容涵盖了Oracle的基础概念、SQL Plus的使用方法、Oracle的安装配置流程以及如何创建和管理表等内容。这些知识点对于学习Oracle数据库非常有帮助,能够帮助初学者快速入门,并为后续深入学习打下坚实的基础。

    Oracle编程开发面试题

    - **LISTENER.ORA**:是Oracle监听器配置文件,用于定义监听器的服务名、监听地址、端口等配置信息,确保客户端能够正确地连接到数据库服务器。 #### 6. 存储过程异常处理 - **输出结果**: - 如果`&lt;语句1&gt;`出错...

Global site tag (gtag.js) - Google Analytics