RDA是Remote Diagnostic Agent 的简称,是Oracle用来收集、分析数据库的工具,运行该工具不会改变系统的任何参数,RDA收集的相关数据非常全面,可以简化我们日常监控、分析数据库的工作,Oracle Support也建议我们在反馈相关问题时,提供RDA收集的数据,
这样可以为快速解决问题提供一个有力的保证。
一、支持的操作系统
IBM AIX
Intel Linux (RedHat and SuSE)
HP-UX (10.* and 11.*)
HP Tru64
Sequent Dynix/Ptx
Sun Solaris (2.6 - 2.10)
Windows XP Professional
windows 2000 Workstation and Server
Windows 2003 Server
二、支持的Oracle产品
Oracle RDBMS Server (Standard and Enterprise Editions)
Oracle RAC Cluster (Single Node Collection)
Oracle Application Server (iAS 1.0.2.x/9.0.x/10.1.2.x, HTTP Server)
Oracle Management Server and Intelligent Agent (Grid Server, Agent Server, DB Control)
OLAP ProdUCts (Express Server, Financial Analyzer, and Demand Planning Server)
Oracle Developer (Forms and Reports)
Oracle Collaboration Suites (Email Server and Internet Directo
三、主要用于诊断数据库的以下方面的问题
性能、安装、配置、升级、移植以及内部错误问题
四、RDA的安装
工具下载:http://www.blogJava.net/Files/beauty_beast/rda.rar
在Unix操作系统的安装说明:
1、工具下载完后不要在window操作系统下做解压缩,脚本的文件格式会破坏。
2、FTP上传是采用二进制方式。
3、执行解压缩命令
example:
gunzip rda.tar.gz
tar xvf rda.tar
4、在解压缩后的目录下执行 ./rda.sh -c 测试是否正常 五、RDA的使用
在Unix操作系统中,oracle推荐在数据库创建用户下执行(一般即为oracle用户)。
第一次使用需要做一个采集的初始配置。
执行命令:
。/rda.sh -S
执行命令后,会有个向导化的界面让你根据当前数据库的实际安装的产品完成初始配置。 完成配置后rda目录下会生成配置文件 setup.cfg、setup.bak, 假如需要重新调整配置参数,可以直接修改该文件。
初始配置完毕后要采集数据,执行命令:
。/rda.sh
假如要看到具体的采集过程,可以执行命令:
。/rda.sh -v
在采集过程中有可能需要你输入数据库相关用户的密码。
采集完成后,在rda目录下根据初始配置文件会生成格式为zip的报告文件以及采集日志, 默认文件位置。/output/RDA.$machine_name.zip.
解压缩该文件,访问 <report_group>__start.htm,就可以看到这次采集的数据的具体信息。
使用时的注重点:
1、有时不能生成zip格式的报告文件,这跟客户端是否安装压缩工具有关,需要自行解压缩相关报告文件。
2、假如需要安装已生成的配置再次采集,删除已生成的报告文件,然后执行命令:
。/rda.sh -Svf 重新设置后再执行采集命令 ./rda.sh -v
六。采集数据分析
报告文件主要包括数据库对应机器的操作系统软、硬件环境、用户设置以及数据库具体的信息(初始参数、运行事件、日常监控等)
在日常的维护当中,我们主要
1、关注RDBMS下的几个统计信息。
Database SPFile Parameters spfile中数据库相关初始参数的设置
SGA Information 查看系统全局区当前内存信息
Sessions and Processes 采集时间内的数据库会话相关信息
V$System_Event 数据库实例整个运行期间所有进程事件的等待统计视图
V$Session_Wait 会话等待事件以及相关定位信息数据
Latch Information 竞争相关信息(翻译不是很准确)
Tablespaces 数据库表空间信息(表空间类型、对应数据文件使用率、是否可扩展等等)
Database Files 数据库对应数据文件信息(文件位置、使用率等)
Invalid Objects 失效的数据库对象,日常监控假如发现有失效,需要维护人员手工重新编译
all errors 日常执行的数据库错误
在 V$System_Event、 V$Session_Wait 主要关注(buffer busy waits、db file scattered read、db file sequential read、enqueue、free buffer waits、latch free、log file sync、log file paralle write 这些事件。
2、关注RDBMS Log/Trace Files 的信息
alert.log 数据库系统级日志
last errors 数据库最近的异常日志、根据trace文件位置,可以查看具体错误信息