温馨提示×

温馨提示×

您好,登录后才能下订单哦!

密码登录×
登录注册×
其他方式登录
点击 登录注册 即表示同意《亿速云用户服务条款》

【oracle性能监控】- 使用Spotlight监控oracle及瓶颈分析

发布时间:2020-07-30 00:45:58 来源:网络 阅读:1063 作者:平山 栏目:关系型数据库

1 Spotlight简介

Spotlight是Quest公司出品的用于第三方性能监控的图形化工具,Spotlight相关的产品众多,如Spotight on Linux/Unix、Spotight on Windows、Spotlight on SQL Server、 Spotlight on DB2、Spotight on Oracle等,本文介绍的Spotlight就是用于oracle领域的图形化、实时性能监控诊断工具-Spotight on Oracle,它提供了直观、可视化的数据库活动展现能力,一旦某个指标出现性能瓶颈,就能可视化展现出来。因此,DBA或性能测试人员可以据此简单、快速地追查性能瓶颈的底层原因。另外,Spotlight不需要在服务器端安装代理,只需要创建一些管理对象,方便部署和应用。

2 部署Spotlight

Spotlight的使用依赖oracle客户端,部署安装前需要准备如下安装文件:

1) Oracle客户端instant client

官网下载地址:

https://www.oracle.com/technetwork/cn/database/features/instant-client/index-092699-zhs.html

 

2) Spotlight

官网下载地址:

https://support.quest.com/zh-cn/spotlight-on-oracle/10.3.3/download-new-releases


以上两个工具按照提示步骤一步步安装即可,详细安装步骤不再赘述。其中,oracle client需要配置系统环境变量PATH、TNS_ADMIN,其值为tnsnames.ora文件所在目录,如

PATH:D:\oracle\instantclient_11_2;

TNS_ADMIN:D:\oracle\instantclient_11_2;

3 使用Spotlight进行性能监控

使用Spotlight进行性能监控前,需要做一些简单配置,具体使用方法如下:

3.1 配置数据库连接信息

在oracle 客户端工具的安装目录下找到tnsnames.ora文件,在文件里配置需要监控数据库实例的连接信息,形式如下:

【oracle性能监控】- 使用Spotlight监控oracle及瓶颈分析

3.2 配置监控用户

在实际监控中,建议创建一个专用的监控用户来获取监控信息,点击菜单项file-Oracle User Wizard,打开用户创建向导,如图所示,然后根据提示输入DBA连接认证、创建一个新用户、输入用户名和密码(如,用户名:spotlight,密码:test123)、选择表空间,一步步完成即可。

【oracle性能监控】- 使用Spotlight监控oracle及瓶颈分析

3.3 创建数据库连接

1 点击工具栏Connect快捷键,打开连接管理器向导,双击New connection图标,输入连接名字后,即可打开连接属性配置窗口,如下图所示:

【oracle性能监控】- 使用Spotlight监控oracle及瓶颈分析

2 打开连接属性配置窗口后,可以看到窗口主要有三部分:ORACLE连接配置、ASM连接配置、服务器连接配置,其中后面两项是可选项,如果不需要,不要勾选即可。连接信息配置完成后,点击ok,即可看到监控主界面。

【oracle性能监控】- 使用Spotlight监控oracle及瓶颈分析

3 监控界面介绍

当上述配置完成后,执行连接,就能看到Spotlight的监控界面,如图所示。从界面可以实时观察数据流向,同时可以直观看出系统的整体运行情况,如果系统哪方面出现性能瓶颈或问题,会报相应的警告,红色警告的级别为最严重。

【oracle性能监控】- 使用Spotlight监控oracle及瓶颈分析

注:绿色区域代表相关区域正常,×××区域代表该区域超出标准值出现警告,红色区域代表该区域出现异常。


3 Spotlight重点监控及分析

3.1  Top Sessions

点击工具栏图标【oracle性能监控】- 使用Spotlight监控oracle及瓶颈分析,可以打开Top Sessions面板,如图所示,通过该面板可以查看当前session的情况,如哪个session占用了较多资源,以此定位数据库问题。通过点击列名可以进行排序,如点击CPU(ms/s),会根据CPU进行升序或降序排列;选择某个session,进行双击可以查看该session的详细信息,如Session Details、Session Waits、Session SQL、Session Locks等;或者在某个session上右键,可以执行kill session、trace session等操作。

【oracle性能监控】- 使用Spotlight监控oracle及瓶颈分析 

在Session Infomation窗口,需要重点关注的是Session Waits、Session SQL、Session Locks,如图所示,其作用分别为:

Session Waits:找出与该session相关的等待事件;

Session SQL:找出该session相关的最近执行的sql语句;

Session Locks:与该session相关的锁信息,查看是否阻塞;

【oracle性能监控】- 使用Spotlight监控oracle及瓶颈分析

3.2 Top SQL

点击工具栏图标【oracle性能监控】- 使用Spotlight监控oracle及瓶颈分析,可以打开Top SQL面板,如图所示,通过该面板可以查看系统中占用资源较大的sql语句,选择对应的行,可以查看SQL information详细信息。

【oracle性能监控】- 使用Spotlight监控oracle及瓶颈分析

该面板主要用于查找存在瓶颈的SQL语句,如哪些SQL耗时较长,哪些SQL磁盘读写多、缓存命中率低等,然后针对有问题的SQL进行优化,通过可以先从语法上优化,再从业务逻辑上优化。

3.3 Activity

点击工具栏图标【oracle性能监控】- 使用Spotlight监控oracle及瓶颈分析,可以打开Activity面板,如图所示,该面板以直方图的形式展示了IO、活动session、等待事件等信息,通过其他tab页面可以查看具体的waits事件、Locks等信息,该界面数据一般用于辅助分析。

【oracle性能监控】- 使用Spotlight监控oracle及瓶颈分析

3.4 I/O和配置内存

点击工具栏图标【oracle性能监控】- 使用Spotlight监控oracle及瓶颈分析,可以分别打开I/O和配置内存面板,如图所示,通过这两个面板可以查看session、数据文件的IO情况、数据库内存配置及使用情况等,一般用于辅助分析。

【oracle性能监控】- 使用Spotlight监控oracle及瓶颈分析

在I/O界面,通过关心的是哪个表空间或数据文件的物理读写较高,哪个session执行的SQL导致这些IO异常。从该界面可以定位到那个session的IO异常,然后结合Top Session界面的SQL进行分析、定位。当然,也可能是表结构设计导致的IO问题,此时结合Segment的IO的使用情况进行分析。

在配置内存界面,需要关注SGA利用率、shared pool、buffer cache的利用率和命中率,其中在shared pool中主要查看library 命中的情况,在buffer cache主要关注命中率,如果命中利率太低,可能存在问题。

4 其他资源

  关于python学习、分享、交流,笔者开通了微信公众号【小蟒社区】,感兴趣的朋友可以关注下,欢迎加入,建立属于我们自己的小圈子,一起学python。

向AI问一下细节

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:is@yisu.com进行举报,并提供相关证据,一经查实,将立刻删除涉嫌侵权内容。

AI