Oracle 轻量级实时监控工具 oratop详解

今天和大家聊聊 Oracle 自带的 oratop 轻量级实时监控小工具!

众所周知,Oracle 最强大的监控工具就是 EM(Enterprise Manager)企业管理器。这是最为人熟知的,估计也是接触最多的一款监控产品了。然而还有功能更加强大的监控工具:EMDC、EMGC、EMDC、EMCC。

  • EMDC:Database Control
  • EMGC:Grid Control
  • EMDC:EM Database Express 12c
  • EMCC:Cloud Control

不过今天的主角不是这些,以上每一款介绍都需要大量的篇幅来描述,安装、卸载、应用等等。感兴趣的朋友可自行查看官方文档,自行阅读,这里暂时不在讨论了。

docs.oracle.com -> Database -> Enterprise Manager
https://docs.oracle.com/en/enterprise-manager/index.html
https://docs.oracle.com/en/enterprise-manager/earlier.html

刚好公司中也用到了 EMCC 做备份相关的工作,等有机会在介绍这一块的知识吧,这里顺便截图如下:

我们今天要说的主题是:Oracle 轻量级实时监控工具:oratop。

oratop 轻量级实时监控工具, 它不需要安装在被监控的数据库服务器上,只要有 oracle 的客户端就行了,可以采用类似 sqlplus 的方式连接被监控的数据库。oratop 适用于 12CR2 - 21C 只需配置环境变量即可使用,不过 11gR2 和 12cR1 需单独安装,最低也是支持 11gR2(11.2.0.3, 11.2.0.4)。 Oratop 工具允许有特权的用户监视 Oracle 数据库活动。它几乎实时地动态运行,并为正在运行的数据库提供一个活动窗口。

在我的 Oracle 19C 中只需要配置环境变量便可以使用,不需额外安装。

export ORACLE_SID=JiekeCDB
export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/suptools/oratop:$PATH
export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH

使用时,用 oratop -h 获取更多的帮助,oratop / as sysdba 直接登录当前主机,可进行简单的监控,当然也可以作为客户端进行远程监控,方式如下:

oratop sys/oracle@IP:Prot/service_names as sysdba。

Oracle 支持的最低版本是 11gR2, MOS Note(Doc ID 1500864.1) 中提供了与 11gR2 和
12cR1 Oracle 版本兼容的独立 oratop 下载版本。对于 12cR2 以后的 Oracle 版本, 它位于文件夹 $Oracle_HOME/suptools/oratop 下。此外, 它还与 Oracle 跟踪文件分析器(TFA) 捆绑在一起。

主要监控有(Key motivations include):

  • 监控当前的数据库活动,Monitoring current database activities,
  • 监控数据库性能,Database performance,
  • 识别争用和瓶颈。Identifying contentions and bottleneck

特色亮点(Features Highlights)

  • 进程和 SQL 监视 Process & SQL Monitoring
  • 实时等待事件监控 Real time wait events
  • 支持 ADG 监控 Active Data Guard support
  • 支持多租户数据库(CDB) (仅种子级) Multitenant Database (CDB) support (seed level only)

oratop 现在已经和 Trace File Analyzer Collector (TFA)以及支持工具包中的其他工具一起发布和集成了。因此,获得 oratop 的首选方法不是单独下载 oratop,而是下载 TFA 的最新版本。这种集成方式任何时候 TFA 升级,最新版本的 oratop 和其他支持工具包也将获得。如果 GI 版本是11.2.0.4 或 12.1.0.2,那么将自动安装 TFA。在任何一种情况下,我们建议 TFA 安装是从 TFA Collector -增强诊断收集工具(Doc ID 1513912.1)升级到最新版本,以便获得支持工具第一次与 TFA 版本 12.1.2.3.0 绑定的捆绑包,以及各种其他新特性、bug 修复和优化。总之就是一句话,是说 12.1.2.3.0 以后的版本才有 oratop 这个小工具,不过,我这里也下载了 11gR2 版本的:11gR2 on Linux x86-64  oratop.RDBMS_11.2_LINUX_X64,点击此链接下载 https://www.modb.pro/download/39702 或者在本公众号后台回复【oratop】获取 11gR2 版本。

以下是我个人单机 11gR2 环境,上传此文件,简单配置环境变量即可使用。简单方便又好用,可以看到版本是 14.2,在 19c 中有所更新,版本是 15.0。

[oracle@JiekeXu ~]$ export ORACLE_SID=JiekeXu
[oracle@JiekeXu ~]$ export PATH=$ORACLE_HOME/bin:$ORACLE_HOME/suptools/oratop:$PATH
[oracle@JiekeXu ~]$ export LD_LIBRARY_PATH=$ORACLE_HOME/lib:$LD_LIBRARY_PATH
[oracle@JiekeXu ~]$
[oracle@JiekeXu ~]$ ll oratop.RDBMS_11.2_LINUX_X64
-rwxr-xr-x 1 oracle oinstall 132K Nov 24 03:48 oratop.RDBMS_11.2_LINUX_X64
[oracle@JiekeXu ~]$
[oracle@JiekeXu ~]$ ./oratop.RDBMS_11.2_LINUX_X64 -h
oratop: Release 14.1.2
Usage:
  oratop [ [Options] [Logon] ]

  Logon:
  {username[/password][@connect_identifier] | / }
  [AS {SYSDBA|SYSOPER}]

  connect_identifier:
   o Net Service Name, (TNS) or
   o Easy Connect (host[:port]/[service_name])
  Options:
  -d : real-time (RT) wait events, p 3 (default is Cumulative)
  -k : FILE#:BLOCK#, p 4 lt is (EVENT/LATCH)
  -m : MODULE/ACTION, p 4 (default is USERNAME/PROGRAM)
  -s : SQL mode, p 4 (default is process mode)
  -c : database service mode (default is connect string)
  -f : detailed format, 132 columns (default: standard, 80 columns)
  -b : batch mode (default is text-based user interface)
  -n : maximum number of iterations (requires number)
  -i : interval delay, requires value in seconds (default: 5s)
  -v : oratop release version number
  -h : this help

[oracle@JiekeXu ~]$ ./oratop.RDBMS_11.2_LINUX_X64 / as sysdba

oratop: Release 14.1.2 Production on Tue Nov 24 04:02:17 2020
Copyright (c) 2011, Oracle. All rights reserved.

Connecting ...
Oracle 11g - Jie 04:02:47 up: 59s, 1 ins, 0 sn, 0 us, 644M mt, 2.2% db
ID %CPU LOAD %DCU AAS ASC ASI ASW AST IOPS %FR PGA UTPS UCPS SSRT %DBT

EVENT (C)   TOT WAITS TIME(s) AVG_MS PCT WAIT_CLASS
db file sequential read  5305 59 11.3 66 User I/O
DB CPU      14  16
db file scattered read   418  7 18.9 9 User I/O
log file parallel write  183  4 25.2 5 System I/O
control file heartbeat   1  4 4000.5 4  Other

ID SID SPID USR PROG S PGA SQLID/BLOCKER OPN E/T STA STE EVENT/*LA W/T
[oracle@JiekeXu ~]$

更多内容请参考 MOS 文档:oratop - Utility for Near Real-time Monitoring of Databases, RAC and Single Instance(Doc ID 1500864.1),关注公众号【Java技术迷】后台回复【210330】可一起获取本文档。

最后,还有 ORAchk 工具也是一个很不错的工具,等下次要是有时间在一起学习使用吧,感兴趣的小伙伴可查看官方文档获取更多资料。

Autonomous Health Framework (AHF) - Including TFA and ORAchk/EXAChk (Doc ID 2550798.1)

Get Proactive with Oracle Database Diagnostic Tools (Doc ID 1459344.1)
Best Practices
最佳实践

ORAchk — Take Action
ORAchk replaces the popular RACcheck tool, extending the coverage based on prioritization of top issues reported by users, to proactively scan for known problems including Database area. ORAchk scans and provides a high level report showing your system health risks with the ability to drill down into specific problems and understand their resolutions.

ORAchk取代了流行的RACcheck工具,基于用户报告的最重要问题的优先级扩展了覆盖范围,可以主动扫描已知的问题,包括数据库区域。ORAchk扫描并提供一个高层次的报告,显示您的系统健康风险,并具有深入研究特定问题并理解其解决方案的能力。

到此这篇关于Oracle 轻量级实时监控工具 oratop详解的文章就介绍到这了,更多相关Oracle 监控工具 oratop内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • 在Linux系统上同时监控多个Oracle数据库表空间的方法

    一,设计背景   由于所在公司ORACLE数据库较多,传统人工监控表空间的方式较耗时,且无法记录历史表空间数据,无法判断每日表空间增长量,在没有gridcontrol/cloudcontrol软件的情况下,笔者设计如下表空间监控方案,大家也可以根据自己的实际情况对下面的方案进行修改. 二,设计思路 通过dblink将来查询到的表空间数据集中汇总到一张表里通过crontab跑定时任务从各台服务器获取表空间使用情况信息. 三,具体实施步骤   1.所在oracle数据库ip地址信息(下面为举例说明具

  • oracle AWR性能监控报告生成方法

    目前相当一部分公司会用到oracle,在做性能测试的时候,对数据库的监控很重要,那么这里先介绍下如何生成oracle自带的awr监控报告,而具体报告的内容分析会放在后续的博客中. oracle性能分析入门学习中,遇到oracle数据库的性能问题,一般首要的步骤就是导出AWR的分析报告,awr报告是oracle自带的监控报告,会自带很多监控数据,那么本篇博客就是介绍如何导出awr报告 1.首先需要进入oracle用户,linux命令:su oracle,可以看到从root用户改为oracle用户

  • Oracle 监控索引使用率脚本分享

    Oracle提供了索引监控特性来判断索引是否被使用.在Oracle 10g中,收集统计信息会使得索引被监控,在Oracle 11g中该现象不复存在.尽管如此,该方式仅提供的是索引是否被使用.索引被使用的频率未能得以体现.下面的脚本将得到索引的使用率,可以很好的度量索引的使用情况以及根据这个值来判断当前的这些索引是否可以被移除或改进. 1.索引使用频率报告 --运行环境 SQL> select * from v$version where rownum<2; BANNER -----------

  • Oracle 10g各个帐号的访问权限、登录路径、监控状态命令查询等等

    1.帐号和口令设置 要选择用户SYS.SYSTEM.DBSNMP.SYSMAN使用相同的口令,那就选择"所有账户使用同一口令". BI用户,口令ch51*****,SCOTT用户.以上全部为同一个口令ch5******* 这里选择"使用不同的口令",分别设置用户的口令: SYS用户的口令为ORACLE SYSTEM用户的口令为MANAGER DBSNMP用户的口令为DBSNMP SYSMAN用户的口令为SYSMAN. SCOTT用户,指定用户口令为TIGER 2.登

  • oracle监控某表变动触发器例子(监控增,删,改)

    使用oracle触发器 实现对某个表的增改删的监控操作,并记录到另一个表中. 代码: 复制代码 代码如下: create or replace trigger test_trigger    before insert or update or delete on test_table    for each row  declare    v_id        varchar2(30);    v_bdlb      varchar2(1);    v_jgdm      VARCHAR2(

  • Oracle 轻量级实时监控工具 oratop详解

    今天和大家聊聊 Oracle 自带的 oratop 轻量级实时监控小工具! 众所周知,Oracle 最强大的监控工具就是 EM(Enterprise Manager)企业管理器.这是最为人熟知的,估计也是接触最多的一款监控产品了.然而还有功能更加强大的监控工具:EMDC.EMGC.EMDC.EMCC. EMDC:Database Control EMGC:Grid Control EMDC:EM Database Express 12c EMCC:Cloud Control 不过今天的主角不是这

  • Oracle分页查询的实例详解

    Oracle分页查询的实例详解 1.Oracle分页查询: SELECT * FROM ( SELECT A.*, ROWNUM RN FROM (SELECT * FROM tab) A WHERE ROWNUM <= 40 ) WHERE RN >= 21; 这个分页比下面的执行时间少,效率高. 2. select * from (select c.*,rownum rn from tab c) where rn between 21 and 40 对比这两种写法,绝大多数的情况下,第一个

  • oracle 的表空间实例详解

    oracle 的表空间实例详解 查询表空间 SELECT UPPER(F.TABLESPACE_NAME) "表空间名", D.TOT_GROOTTE_MB "表空间大小(M)", D.TOT_GROOTTE_MB - F.TOTAL_BYTES "已使用空间(M)", TO_CHAR(ROUND((D.TOT_GROOTTE_MB - F.TOTAL_BYTES) / D.TOT_GROOTTE_MB * 100, 2), '990.99')

  • Mybatis调用Oracle存储过程的方法图文详解

    1:调用无参数的存储过程. 创建存储过程: Mapper.xml 配置:经测试其他标签(update.insert.select)也可以. Mapper.java MapperTest.java 测试 2:有参数的存储过程调用: 2.1存储过程的创建: 2.2Mapper.xml 的配置: 2.3Mapper.java 2.4MapperTest.java 测试 控制台输出: 3:存储过程的结果集调用. 3.1创建存储过程: 3.2 Mapper.xml 配置 配置 resultMap结果集字段

  • Oracle date 和 timestamp 区别详解

    Oracle date 和 timestamp 区别详解 1.DATE数据类型 这个数据类型我们实在是太熟悉了,当我们需要表示日期和时间的话都会想到date类型.它可以存储月,年,日,世纪,时,分和秒.它典型地用来表示什么时候事情已经发生或将要发生. DATE数据类型的问题在于它表示两个事件发生时间间隔的度量粒度是秒.这个问题将在稍后讨论timestamp的时候被解决.可以使用TO_CHAR函数把DATE数据进行传统地包装,达到表示成多种格式的目的. SQL> SELECT TO_CHAR(da

  • Oracle的out参数实例详解

    Oracle的out参数实例详解 一 概念 1.一般来讲,存储过程和存储函数的区别在于存储函数可以有一个返回值:而存储过程没有返回值. 2.过程和函数都可以通过out指定一个或多个输出行.我们可以利用out参数,在过程和函数中实现返回多个值. 3.存储过程和存储函数都可以有out参数. 4.存储过程和存储函数都可以有多个out参数. 5.存储过程可以通过out参数来实现返回值. 6.如果只有一个返回值,用存储函数:否则,就用存储过程. 二 实例 --out参数:查询某个员工姓名月薪和职位 /*

  • Oracle安装卸载图文教程详解

    ORACLE安装与卸载步骤详解,供大家参考,具体内容如下 ORACLE安装步骤 1. 将win32_11gR2_database_1of2.zip与win32_11gR2_database_1of2.zip 解压到当前目录(PS:选中两个压缩包后右键解压到当前文件夹:必须同时解压,不能单独解压否则会覆盖文件) 2. 解压完成后设置文件兼容性: 进入 database文件夹 右键点击 setup.exe 属性-兼容性 3. 双击 setup.exe 进行安装 出现 doc窗口后 等待出现安装界面(

  • Oracle数据操作和控制语言详解

    正在看的ORACLE教程是:Oracle数据操作和控制语言详解.SQL语言共分为四大类:数据查询语言DQL,数据操纵语言DML, 数据定义语言DDL,数据控制语言DCL.其中用于定义数据的结构,比如 创建.修改或者删除数据库:DCL用于定义数据库用户的权限:在这篇文章中我将详细讲述这两种语言在Oracle中的使用方法. DML语言 DML是SQL的一个子集,主要用于修改数据,下表列出了ORACLE支持的DML语句. 插入数据 INSERT语句常常用于向表中插入行,行中可以有特殊数据字段,或者可以

  • Linux环境下Oracle安装参数设置方法详解

    前面讲了虚拟机的设置和OracleLinux的安装,接下来我们来说下Oracle安装前的准备工作. 1.系统信息查看 系统信息查看 首先服务器ip:192.168.8.120 服务器系统:Oracle Linux Server release 6.5 服务器主机名:oracle-learn 查看磁盘空间情况: [root@oracle-learn ~]# df -h Filesystem Size Used Avail Use% Mounted on /dev/sda1 32G 4.8G 26G

  • Flume监听oracle表增量的步骤详解

    需求:获取oracle表增量信息,发送至udp514端口,支持ip配置 步骤: (1)需要的jar  oracle的 odbc5.jar(oracle安装目录  /jdbc/lib下查找) (2)flume的开源包flume-ng-sql-source-1.4.3.jar  最新的好像是1.5的 小版本记不住了 这个下载地址直接csdn上就有 这两个jar 都拷贝到flume的lib下 (3)flume配置文件 a1.sources = r1 a1.sinks = k1 a1.channels

随机推荐