磨刀不误砍柴工,ORAchk健康检查好帮手

简介:


ORAchk 之前被称为RACcheck,后来它的检查范围进行了扩展,改名为了ORAchk,它是在数据库系统进行健康检查的一个专用工具,这个工具主要用来检查软件的配置是否符合要求以及一些最佳实践是否被应用了。通过这个工具,用户可以很方便地、自动化地对自己的系统进行健康检查和评估。

 

目录

 

  • ORAchk 基本情况介绍

  • 如何下载和安装ORAchk

  • 如何执行orachk

  • ORAchk生成的报告

  • ORAchk 升级检查功能

  • 什么时候适宜运行ORAchk


一. ORAchk 基本情况介绍


ORAchk 能够检查的软件主要有:OS、Oracle Clusterware (CRS)、 Grid Infrastructure environment(GI)、Automatic Storage Management (ASM)以及Real Application Clusters (RAC)、单机的数据库、Golden Gate。

检查的项目包括:

 

  • OS kernel 参数

  • OS 包/补丁

  • OS上其它和RAC相关的配置

  • CRS/Grid Infrastructure

  • RDBMS

  • ASM

  • 数据库参数

  • 对于RAC数据库影响较大的设置

  • 升级到11.2.0.3/11.2.0.4/12c时的升级检查

  • Maximum Availability Architecture (MAA)检查

 

目前支持的平台:

 

  •  Linux x86-64* (Enterprise Linux, RedHat and SuSE 9, SuSE 10 & SuSE 11)

  • Oracle Solaris SPARC (64-bit)(Solaris 10 and 11)

  • Oracle Solaris x86-64 (Solaris 10 and 11)

  • IBM AIX on POWER Systems (64-bit) **

  • HP-UX PA-RISC (64-bit)**

  • HP-UX Itanium **


*  不支持32位平台,不支持 Linux Itanium
** 需要安装BASH Shell 3.2 或之上

目前支持的数据库版本:

 

  • 10gR2

  • 11gR1

  • 11gR2

  • 12cR1


注:自版本 2.2.0 起,ORAchk 支持单实例、Oracle Restart 以及 RAC(包括 RAC One)   

 

我们推荐使用最新版本的ORAchk,这是因为ORAchk基于最佳实践,这些最佳实践会不断更新,另一方面ORAchk会检查补丁的安装情况,PSU 是按季度推出的,所以ORAchk也会至少每两到三个月更新一次。
 

二.首先看一下如何下载和安装ORAchk
 

ORAchk是从下面的My Oracle Support 文档中下载:
    

ORAchk - Health Checks for the Oracle Stack (Doc ID 1268927.1)

对于RAC环境,只需要在任意一个节点执行ORAchk就可以,它会通过SSH连接到别的节点收集数据,由于它会以sysdba身份登录到数据库中做很多检查,所以要求用数据库软件的属主来执行ORAchk,而且要对oracle用户配置用户等效性,使它能够无需密码就连接到远程节点。

下载之后的文件为orachk.zip。 将这个文件用数据库软件属主上传到RAC集群的任一节点,比如节点1的一个目录:

 

 

三. 接下来看一下如何执行orachk

它的执行也是非常简单的,用oracle用户执行:

 

 

 

两个节点一般需要运行10多分钟,每个节点大概需要5分钟。ORAchk占用的资源很少,在我的测试库上大概占用了10%左右的CPU。另外,ORAchk生成的结果一般在5M左右,自动压缩生成的.zip文件大概几百K。
 

四. 再看一下ORAchk生成的报告

ORAchk 检查完成之后会生成一个html报告,这个报告的命名为:orachk_节点名_数据库名_时间.html,比如orachk_rac1_RACDB_111013_185118.html。同时,它还会把所有的输出文件都打包为一个.zip文件,比如orachk_rac1_RACDB_111013_185118.zip,可以把这个.zip文件从RAC服务器上下载到本地的windows,解压后查看其中的生成的orachk_节点名_数据库名_时间.html 这一个文件就可以。

生成的报告也非常简单、清晰,在报告最上部会列出这次检查的分数,满分是100分。

 

 

在html报告中会列出下面的内容:

 

 

对于每一项失败的项目,点击对应的“View"按钮会,会列出这项检查为何失败、这个问题会导致的影响、 推荐的解决方案,相关文档等。

 

 

五. ORAchk 升级检查功能

ORAchk 还有一个很赞的功能就是升级前和升级后的检查,当前的ORAchk版本2.2.3_20131007已经支持升级到版本11.2.0.3/11.2.0.4/12c时的升级检查。进行升级检查的目的是为了保障集群和RAC升级的过程尽量平稳和顺利,尽量避免遇到已知的问题。使用ORAchk进行升级检查的好处是它整合了许多升级方面常用的文档,这样就可以统一入口,用ORAchk这个工具进行检查就可以。

 

升级检查分两个阶段:

 

升级前:
    $./orachk -u -o pre  
升级后:
    $./orachk -u -o post 

 

六. 什么时候适宜运行ORAchk呢?

 

  • 在系统负载较低的时候运行,这样对系统影响最小。ORAchk 不会对系统的性能状况进行分析,因此不需要在系统发生性能情况时执行。

  • 另外在RAC环境部署完毕之后推荐运行一下来检查一下系统的配置健康情况。

  • 还推荐在计划内的维护前和维护后都执行一下

  • 在升级前和升级后也要执行

  • 在日常维护中,至少每三个月执行一次,因为ORAchk每两到三个月会更新一次


 默认方式执行 ./orachk 后只会执行一次,但是可以在执行ORAchk时以自动任务的方式让它定期执行,并发送邮件通知。具体的配置方式请参考ORAchk的用户手册章节“ORAchk Daemon Mode Operation”(也是在MOS文档 1268927.1中下载)。  
 

比如:

 

 

ORAchk 不会像OSWatcher一样自动维护它的输出文件,需要手工清除或者设置cron等自动任务来清除。


另外,不可以在一台server上同时启动多个ORAchk,同一时刻只能执行一个ORAchk。

需要注意的是,ORAchk不是诊断工具,不是性能调优工具,也不是数据收集工具,比如RAC节点发生了重启,那么ORAchk不能告诉你重启的原因,它也不会收集诊断重启问题的数据,所以它不能代替RDA ,diagcollection等工具。另外,ORAchk也不能代替cluster verification utility,这是因为他们两个工具是互补的。CVU 是集群自带的工具,而且GI会定时调用CVU来进行一些RAC的检查,但是CVU的版本是确定的,不像ORAchk会定期被更新。

ORAchk的支持是通过MOS的社区来进行的,在RAC/Scalability 这个社区中有一个专门用于ORAchk的帖子RAC/Scalability Community Forum,如果有ORAchk的问题,可以在个帖子提问,注意这个帖子是英文的。还可以在中文数据库社区进行讨论。

 

我们在2013年11月份进行了一个关于RACcheck的网上讲座,讲座的录像和讲义可以在在MOS文档1456176.1=》“Archived 2013”=》使用RACCheck诊断和预防RAC问题=》点击Recording 或者 .pdf 进行下载.

 

附:我用目前最新的ORAchk版本进行了测试,单实例上也可以运行ORAchk,下面是在AIX上利用ORAchk对10.2.0.5的单实例数据库进行检查的过程:

 


本文来自云栖社区合作伙伴"DBAplus",原文发布时间:2016-01-20

目录
相关文章
地理编码与反地理编码
地理编码与反地理编码
802 0
地理编码与反地理编码
|
9月前
|
Web App开发 JSON 前端开发
2.3K star!5分钟搭建专属网课平台?这个开源项目强得离谱!
嗨,大家好,我是小华同学。今天为大家介绍一款专为导师设计的开源视频会议系统——Nettu Meet。它具备实时音视频、共享白板、屏幕共享、聊天和文件共享等功能,特别适合在线辅导、艺术技能培训和语言学习交流等场景。用户可以轻松创建会议并自定义界面,提升在线教学效率和互动性。
190 1
2.3K star!5分钟搭建专属网课平台?这个开源项目强得离谱!
|
9月前
|
监控 网络协议 算法
基于问题“如何监控局域网内的电脑”——Node.js 的 ARP 扫描算法实现局域网内计算机监控的技术探究
在网络管理与安全领域,监控局域网内计算机至关重要。本文探讨基于Node.js的ARP扫描算法,通过获取IP和MAC地址实现有效监控。使用`arp`库安装(`npm install arp`)并编写代码,可定期扫描并对比设备列表,判断设备上线和下线状态。此技术适用于企业网络管理和家庭网络安全防护,未来有望进一步提升效率与准确性。
342 8
|
10月前
|
XML 机器学习/深度学习 人工智能
使用 OpenCV 和 Python 轻松实现人脸检测
本文介绍如何使用OpenCV和Python实现人脸检测。首先,确保安装了OpenCV库并加载预训练的Haar特征模型。接着,通过读取图像或视频帧,将其转换为灰度图并使用`detectMultiScale`方法进行人脸检测。检测到的人脸用矩形框标出并显示。优化方法包括调整参数、多尺度检测及使用更先进模型。人脸检测是计算机视觉的基础技术,具有广泛应用前景。
456 10
|
存储 Oracle 关系型数据库
达梦数据库入门语法:从基础到进阶的指南
达梦数据库入门语法:从基础到进阶的指南
2933 2
|
监控 安全 数据安全/隐私保护
【Docker项目实战】使用Docker部署OneTerm堡垒机
【8月更文挑战第6天】使用Docker部署OneTerm堡垒机
444 7
【Docker项目实战】使用Docker部署OneTerm堡垒机
|
SQL 分布式计算 关系型数据库
Dataphin实现MaxCompute外表数据快速批量同步至ADB MySQL
当前大数据时代背景下,企业对数据的处理、分析和实时应用的需求日益增强。阿里云MaxCompute广泛应用于海量数据的ETL、数据分析等场景,但在将处理后的数据进一步同步至在线数据库系统,如ADB MySQL 3.0(阿里云自研的新一代云原生关系型数据库MySQL版)以支持实时查询、业务决策等需求时,可能会遇到数据迁移速度缓慢的问题。 DataphinV3.14版本支持外表导入SQL的带参调度,实现通过MaxCompute外表的方式将数据批量同步至ADB MySQL 3.0中,显著提升数据迁移的速度和效率。
792 1
|
存储 C语言 Perl
西门子S7-1200的变量如何使用?什么是局部变量和全局变量?临时变量和静态变量有什么区别?
今天给大家讲一下什么是局部变量、全局变量、临时变量、静态变量,这些变量都有什么区别,以及在西门子S7-1200中这些变量如何来使用。
西门子S7-1200的变量如何使用?什么是局部变量和全局变量?临时变量和静态变量有什么区别?
|
存储 缓存 NoSQL
Redis从入门到精通之底层数据结构SDS(简单动态字符串)详解
SDS是Redis中的一种字符串类型,它是一种二进制安全的字符串,由简单动态字符串(SDS)实现。SDS支持多种数据结构,其中字符串(String)是最常用的一种数据结构之一。SDS的优点在于它可以避免C字符串常见的问题,比如缓冲区溢出和内存泄露等。SDS的常数复杂度获取字符串长度和杜绝缓冲区溢出可以避免使用strlen和strcat函数时的一些问题。同时,SDS的空间预分配和惰性空间释放两种策略可以减少修改字符串的内存重新分配次数。SDS也是二进制安全的,因为它不是以空字符串来判断字符串是否结束,而是以len属性表示的长度来判断字符串是否结束。SDS还兼容部分C字符串函数
3573 93
|
前端开发 小程序 测试技术
靠谱:开源IM项目OpenIM压测程序介绍-自己动手测试性能和稳定性
靠谱:开源IM项目OpenIM压测程序介绍-自己动手测试性能和稳定性
926 0

热门文章

最新文章