創(chuàng)新互聯(lián)是一家專(zhuān)注于網(wǎng)站建設(shè)、做網(wǎng)站與策劃設(shè)計(jì),鳳陽(yáng)網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專(zhuān)注于網(wǎng)站建設(shè)十載,網(wǎng)設(shè)計(jì)領(lǐng)域的專(zhuān)業(yè)建站公司;建站業(yè)務(wù)涵蓋:鳳陽(yáng)等地區(qū)。鳳陽(yáng)做網(wǎng)站價(jià)格咨詢:18980820575
日常數(shù)據(jù)庫(kù)巡檢,是運(yùn)維人員經(jīng)常需要完成的工作之一。對(duì)應(yīng)復(fù)雜的軟硬件和系統(tǒng)環(huán)境,以及越來(lái)越多的系統(tǒng)數(shù)目,常規(guī)手段進(jìn)行一次巡檢的成本壓力越來(lái)越大。綜合性的巡檢方面,自動(dòng)化的執(zhí)行和信息收集,才是未來(lái)巡檢的一個(gè)發(fā)展方向。
Oracle Support內(nèi)部的研發(fā)機(jī)構(gòu),會(huì)推出很多有用的小工具來(lái)輔助我們?nèi)粘Q矙z診斷工具,比如OSWatcher、RDA、oratop。這些工具都從一定程度上解決了我們?cè)谑褂肙racle數(shù)據(jù)庫(kù)過(guò)程中遇到的管理和調(diào)優(yōu)需求。本篇主要介紹oracheck,借助orachk,我們可以快速的進(jìn)行系統(tǒng)巡檢和故障排除。
1、從raccheck到oracheck
oracheck來(lái)源于Oracle為RAC環(huán)境準(zhǔn)備的工具raccheck。最早的raccheck是用于自動(dòng)化Oracle RAC環(huán)境巡檢而開(kāi)發(fā)的,之后不斷推出新的版本和功能。這些新功能中,最有意義的要屬于Oracle MAA(Oracle大可用性體系架構(gòu))的引入。Oracle會(huì)將MAA的最佳實(shí)踐策略,融入到raccheck檢查項(xiàng)目里面,給用戶提供更加全面的巡檢項(xiàng)目。
目前,raccheck已經(jīng)正式改名為oracheck,提供從單實(shí)例數(shù)據(jù)庫(kù)實(shí)例到RAC、OGG等多個(gè)產(chǎn)品系列的巡檢功能。
2、安裝配置
oracheck是需要單獨(dú)從MOS上下載的工具包。和其他Oracle產(chǎn)品不同,oracheck更新速度非常快,官方建議是90天就需要下載最新的oracheck版本。這樣做的目的就是讓用戶可以獲得最新的檢查項(xiàng)目和建議,及時(shí)下載安裝最新的安全補(bǔ)丁。
從MOS上下載的軟件包很簡(jiǎn)單,就是一個(gè)zip包。上傳到服務(wù)器上解壓就可以使用。注意:目前oracheck只支持64bit系統(tǒng),在32bit下不能使用。
創(chuàng)建專(zhuān)門(mén)目錄,上傳zip文件。
[root@CRSimpleLinux /]# mkdir /orachk
[root@CRSimpleLinux /]# cd /orachk/
[root@CRSimpleLinux orachk]# ls -l
total 5120
-rw-r--r-- 1 root root 5241976 May 20 08:44 orachk_224_beta2.zip
解壓安裝包。
[root@CRSimpleLinux orachk]# unzip orachk_224_beta2.zip
Archive: orachk_224_beta2.zip
inflating: orachk
creating: .cgrep/
inflating: .cgrep/lcgreps9
inflating: .cgrep/CollectionManager_App.sql
inflating: .cgrep/asrexacheck
inflating: .cgrep/utlusts.sql
(篇幅原因,有省略……)
檢查腳本,是一系列的配置文件和oracheck執(zhí)行文件。
[root@CRSimpleLinux orachk]# ls -l
total 28072
-rw-rw-r-- 1 root root 21200391 Feb 11 03:50 collections.dat
-rwxr-xr-x 1 root root 1407669 Feb 14 03:23 orachk
-rwxr-xr-x 1 root root 1423197 Feb 11 03:50 raccheck
-rw-r--r-- 1 root root 2541 Feb 11 03:50 readme.txt
-rw-rw-r-- 1 root root 4700572 Feb 11 03:50 rules.dat
-rw-r--r-- 1 root root 296 Feb 11 03:50 UserGuide.txt
額外授權(quán)給oracle用戶,另外修改權(quán)限755。
[root@CRSimpleLinux /]# chown -R oracle:oinstall orachk/
[root@CRSimpleLinux /]# chmod -R 755 /orachk/
[root@CRSimpleLinux /]# cd /orachk/
[root@CRSimpleLinux orachk]# ls -l
total 28072
-rwxr-xr-x 1 oracle oinstall 21200391 Feb 11 03:50 collections.dat
-rwxr-xr-x 1 oracle oinstall 1407669 Feb 14 03:23 orachk
-rwxr-xr-x 1 oracle oinstall 1423197 Feb 11 03:50 raccheck
-rwxr-xr-x 1 oracle oinstall 2541 Feb 11 03:50 readme.txt
-rwxr-xr-x 1 oracle oinstall 4700572 Feb 11 03:50 rules.dat
-rwxr-xr-x 1 oracle oinstall 296 Feb 11 03:50 UserGuide.txt
注意:在執(zhí)行oracheck用戶上,根據(jù)不同的情況可以選擇root或者oracle owner對(duì)象。在一些檢查項(xiàng)目中,是需要root權(quán)限進(jìn)行操作的。一種比較推薦的方式是使用owner用戶執(zhí)行,在需要root權(quán)限的時(shí)候按照提示輸入root密碼。
3、oracheck使用
oracheck腳本有默認(rèn)的行為方式,通過(guò)參數(shù)可以控制執(zhí)行行為。例如-v可以顯示版本信息。
[oracle@CRSimpleLinux orachk]$ ./orachk -v
ORACHK VERSION: 2.2.4(BETA)_20140210
通常情況下,使用默認(rèn)的profile配置,就可以進(jìn)行大部分檢查項(xiàng)目。
[oracle@CRSimpleLinux orachk]$ ./orachk -v
ORACHK VERSION: 2.2.4(BETA)_20140210
[oracle@CRSimpleLinux orachk]$ ./orachk
This computer is for [S]ingle instance database or part of a [C]luster to run RAC database [S|C] [C]:S
orachk did not find the RDBMS binaries on crsimplelinux from environment.
Please set RAT_ORACLE_HOME to ORACLE_HOME in current shell to override and re-run it.
eg export RAT_ORACLE_HOME=/u01/app/oracle/product/11.2.0/db_1
默認(rèn)配置環(huán)境變量中,要求RAT_ORACLE_HOME配置為ORACLE_HOME。
[oracle@CRSimpleLinux orachk]$ export RAT_ORACLE_HOME=$ORACLE_HOME
[oracle@CRSimpleLinux orachk]$ env | grep RAT_ORACLE_HOME
RAT_ORACLE_HOME=/u01/app/oracle/product/10.2.0/db_1
[oracle@CRSimpleLinux orachk]$ ./orachk
This computer is for [S]ingle instance database or part of a [C]luster to run RAC database [S|C] [C]:S
(篇幅原因,有省略……)
Data collections completed. Checking best practices on crsimplelinux.
--------------------------------------------------------------------------------------
(發(fā)現(xiàn)問(wèn)題列表……)
WARNING => net.core.wmem_max Is NOT Configured According to Recommendation
WARNING => net.core.rmem_max Is NOT Configured According to Recommendation
WARNING => The number of async IO descriptors is too low (/proc/sys/fs/aio-max-nr)
WARNING => kernel.shmmax parameter is NOT configured according to recommendation
WARNING => OSWatcher is not running as is recommended.
INFO => Consider increasing the COREDUMPSIZE size
Best Practice checking completed.Checking recommended patches on crsimplelinux.
---------------------------------------------------------------------------------
RDBMS homes patches summary report
---------------------------------------------------------------------------------
Total patches Applied on RDBMS Applied on ASM ORACLE_HOME
---------------------------------------------------------------------------------
Detailed report (html) - /orachk/orachk_crsimplelinux_052014_172942/orachk_crsimplelinux_052014_172942.html –結(jié)果報(bào)告文件
UPLOAD(if required) - /orachk/orachk_crsimplelinux_052014_172942.zip
在目錄中,包括了一個(gè)zip文件和文件夾,包括了巡檢結(jié)果報(bào)告。
[oracle@CRSimpleLinux orachk]$ ls -l
total 28228
-rwxr-xr-x 1 oracle oinstall 21200391 Feb 11 03:50 collections.dat
-rwxr-xr-x 1 oracle oinstall 1407669 Feb 14 03:23 orachk
drwxr-xr-x 6 oracle oinstall 12288 May 20 17:30 orachk_crsimplelinux_052014_172942
-rw-r--r-- 1 oracle oinstall 145482 May 20 17:30 orachk_crsimplelinux_052014_172942.zip
-rwxr-xr-x 1 oracle oinstall 1423197 Feb 11 03:50 raccheck
-rwxr-xr-x 1 oracle oinstall 2541 Feb 11 03:50 readme.txt
-rwxr-xr-x 1 oracle oinstall 4700572 Feb 11 03:50 rules.dat
-rwxr-xr-x 1 oracle oinstall 296 Feb 11 03:50 UserGuide.txt
4、報(bào)告解析
打開(kāi)html文件,可以看到報(bào)告。報(bào)告頭是oracheck對(duì)于系統(tǒng)情況的一個(gè)評(píng)分,下面顯示的是得到了87分。summary環(huán)節(jié)中包括了數(shù)據(jù)庫(kù)基本信息情況。
首先是對(duì)于數(shù)據(jù)庫(kù)需要關(guān)注問(wèn)題,oracheck都給與特別的顯示。在級(jí)別上,也有對(duì)應(yīng)不同的類(lèi)型。目前oracheck支持fail、warning、error和info幾個(gè)類(lèi)型。
后面包括Passed的檢查項(xiàng)目。對(duì)于提醒的問(wèn)題內(nèi)容,我們點(diǎn)擊Details,就可以跳轉(zhuǎn)到詳細(xì)信息部分進(jìn)行解釋檢查。
上面提示的內(nèi)容比較清楚。這個(gè)錯(cuò)誤是針對(duì)內(nèi)核kernal.shmmax參數(shù)確定的。在Oracle DBMS中,配置這個(gè)參數(shù)的原則是按照物理內(nèi)存一般大小進(jìn)行配置就可以。檢查中發(fā)現(xiàn)實(shí)際大?。?147483648,建議大小是4088072192。并且提示了詳細(xì)解析的MOS文章編號(hào)。
oracheck報(bào)告內(nèi)容是結(jié)合了Oracle最佳實(shí)踐內(nèi)容而確定的,我們下面可以根據(jù)實(shí)際情況進(jìn)行修改。
5、重新運(yùn)行報(bào)告
按照提示信息將問(wèn)題修改之后(修改過(guò)程詳見(jiàn)后續(xù)文章),最好重新運(yùn)行oracheck判斷問(wèn)題是否解決。
[oracle@CRSimpleLinux ~]$ cd /orachk/
[oracle@CRSimpleLinux orachk]$ export RAT_ORACLE_HOME=$ORACLE_HOME
[oracle@CRSimpleLinux orachk]$ ./orachk
This computer is for [S]ingle instance database or part of a [C]luster to run RAC database [S|C] [C]:
Collecting - Patches for RDBMS Home
Collecting - number of semaphore operations per semop system call
Data collections completed. Checking best practices on crsimplelinux.
--------------------------------------------------------------------------------------
WARNING => OSWatcher is not running as is recommended.
INFO => Consider increasing the COREDUMPSIZE size
(篇幅原因,有省略……)
---------------------------------------------------------------------------------
Detailed report (html) - /orachk/orachk_crsimplelinux_052014_180024/orachk_crsimplelinux_052014_180024.html
UPLOAD(if required) - /orachk/orachk_crsimplelinux_052014_180024.zip
生成新的報(bào)告文件。
[oracle@CRSimpleLinux orachk]$ ls -l
total 28380
-rwxr-xr-x 1 oracle oinstall 21200391 Feb 11 03:50 collections.dat
-rwxr-xr-x 1 oracle oinstall 1407669 Feb 14 03:23 orachk
drwxr-xr-x 6 oracle oinstall 12288 May 20 17:30 orachk_crsimplelinux_052014_172942
-rw-r--r-- 1 oracle oinstall 145482 May 20 17:30 orachk_crsimplelinux_052014_172942.zip
drwxr-xr-x 6 oracle oinstall 12288 May 20 18:01 orachk_crsimplelinux_052014_180024
-rw-r--r-- 1 oracle oinstall 143227 May 20 18:01 orachk_crsimplelinux_052014_180024.zip
-rwxr-xr-x 1 oracle oinstall 1423197 Feb 11 03:50 raccheck
-rwxr-xr-x 1 oracle oinstall 2541 Feb 11 03:50 readme.txt
打開(kāi)報(bào)告,可以看到檢驗(yàn)得分已經(jīng)提升。
6、報(bào)告對(duì)比功能
oracheck另一項(xiàng)重要功能是報(bào)告對(duì)比。一個(gè)報(bào)告可以提供和之前報(bào)告情況的對(duì)比,及時(shí)發(fā)現(xiàn)問(wèn)題變化因素。
[oracle@CRSimpleLinux orachk]$ ./orachk -diff orachk_crsimplelinux_052014_172942 orachk_crsimplelinux_052014_180024
Summary
Total : 23
Missing : 0
New : 0
Changed : 4
Same : 19
File comparison is complete. The comparison report can be viewed in: /orachk/orachk_052014172942_052014180024_diff.html
報(bào)告文件中,可以看到對(duì)比情況和變化提示。
7、結(jié)論
oracheck來(lái)源于raccheck,從使用方式和功能上沒(méi)有過(guò)多的變化。oracheck對(duì)于Oracle產(chǎn)品、操作系統(tǒng)的支持是比較廣泛的。如果配合自動(dòng)執(zhí)行功能,完全可以支持多數(shù)據(jù)庫(kù)服務(wù)器的日常自動(dòng)化巡檢工作。