Oracle巡檢手冊_第1頁
Oracle巡檢手冊_第2頁
Oracle巡檢手冊_第3頁
Oracle巡檢手冊_第4頁
Oracle巡檢手冊_第5頁
已閱讀5頁,還剩4頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進行舉報或認領(lǐng)

文檔簡介

1、ORACLE 11.2.0.1.0日常巡檢操作手冊藍色互動2015-5-27作者: 唐晨巡檢內(nèi)容一、檢查數(shù)據(jù)庫基本狀況主要對數(shù)據(jù)庫的基本狀況進行檢查,其中包含:檢查Oracle實例狀態(tài),檢查Oracle服務(wù)進程,檢查Oracle監(jiān)聽進程,總共三個部分。 1.1 檢查Oracle實例其中“STATUS”表示Oracle當前的實例狀態(tài),必須為“OPEN”;“DATABASE_STATUS”表示Oracle當前數(shù)據(jù)庫的狀態(tài),必須為“ACTIVE”。其中,“LOG_MODE”表示Oracle當前的歸檔方式。“ARCHIVELOG”表示數(shù)據(jù)庫運行在歸檔模式下,“NOARCHIVELOG”表示數(shù)據(jù)庫運行在

2、非歸檔模式下。為了數(shù)據(jù)庫的安全性,強烈建議數(shù)據(jù)庫運行在歸檔模式下。1.2 檢查Oracle服務(wù)進程在運行Oracle的進程命令輸出后,輸出顯示至少應(yīng)包含一下一些進程:Oracle寫數(shù)據(jù)文件的進程,輸出顯示為:“ora_dbw0_ORCL”;Oracle寫日志文件的進程,輸出顯示為:“ora_lgwr_ORCL”;Oracle監(jiān)聽實例狀態(tài)的進程,輸出顯示為:“ora_smon_ORCL”;Oracle監(jiān)聽客戶端連接進程狀態(tài)的進程,輸出顯示為:“ora_pmon_ORCL”;Oracle進行歸檔的進程,輸出顯示為:“ora_arc0_ORCL”;Oracle進行檢查點的進程,輸出顯示為:“ora_

3、ckpt_ORCL”;Oracle進行恢復(fù)的進程,輸出顯示為:“ora_reco_ORCL”;1.3 檢查Oracle監(jiān)聽狀態(tài)“Services Summary”項標識Oracle的監(jiān)聽進程正在監(jiān)聽哪些數(shù)據(jù)庫實例,輸出顯示中至少應(yīng)該有“ORCL”這一項。檢查監(jiān)聽進程是否存在:二、檢查系統(tǒng)和Oracle日志文件檢查相關(guān)的日志文件,包含:檢查操作系統(tǒng)的日志文件,檢查Oracle日志文件,檢查Oracle核心轉(zhuǎn)儲目錄,檢查root用戶和oracle用戶的email,檢查數(shù)據(jù)庫的字符集,總共五個部分。2.1 檢查操作系統(tǒng)日志文件查看是否有與Oracle用戶相關(guān)的出錯信息。2.2 檢查Oracle日志文

4、件Oracle在運行過程中,會在警告日志文件(alert_SID.log)中記錄數(shù)據(jù)庫的一些運行情況:數(shù)據(jù)庫的啟動、關(guān)閉,啟動時的非缺省參數(shù);數(shù)據(jù)庫的重做日志切換情況,記錄每次切換的時間,及如果因為檢查點(checkpoint)操作沒有執(zhí)行完成造成不能切換,會記錄不能切換的原因;對數(shù)據(jù)庫進行的某些操作,如創(chuàng)建或刪除表空間、增加數(shù)據(jù)文件;數(shù)據(jù)庫發(fā)生的錯誤,如表空間不夠、出現(xiàn)壞塊、數(shù)據(jù)庫內(nèi)部錯誤(ORA600)等。定期檢查日志文件,根據(jù)日志中發(fā)現(xiàn)的問題及時進行處理:問題處理啟動參數(shù)不對檢查初始化參數(shù)文件因為檢查點操作或歸檔操作沒有完成造成重做日志不能切換如果經(jīng)常發(fā)生這樣的情況,可以考慮增加重做日志

5、文件組;想辦法提高檢查點或歸檔操作的效率;有人未經(jīng)授權(quán)刪除了表空間檢查數(shù)據(jù)庫的安全問題,是否密碼太簡單;如有必要,撤消某些用戶的系統(tǒng)權(quán)限出現(xiàn)壞塊檢查是否是硬件問題(如磁盤本生有壞塊),如果不是,檢查是那個數(shù)據(jù)庫對象出現(xiàn)了壞塊,對這個對象進行重建表空間不夠增加數(shù)據(jù)文件到相應(yīng)的表空間出現(xiàn)ORA-600根據(jù)日志文件的內(nèi)容查看相應(yīng)的TRC文件,如果是Oracle的bug,要及時打上相應(yīng)的補丁Listener日志:$ORACLE_HOME/network/log/sqlnet.log2.3 檢查Oracle核心轉(zhuǎn)儲目錄如果上面命令的結(jié)果每天都在增長,則說明Oracle進程經(jīng)常發(fā)生核心轉(zhuǎn)儲。這說明某些用戶

6、進程或者數(shù)據(jù)庫后臺進程由于無法處理的原因而異常退出。頻繁的核心轉(zhuǎn)儲特別是數(shù)據(jù)庫后臺進程的核心轉(zhuǎn)儲會導(dǎo)致數(shù)據(jù)庫異常終止。2.4 檢查root用戶和Oracle用戶的email查看有誤與Oracle用戶相關(guān)的出錯信息。2.5 檢查當前數(shù)據(jù)庫的字符集設(shè)定適合的字符集可以解決亂碼問題。三、檢查Oracle對象情況主要檢查相關(guān)Oracle對象的情況,包含:檢查Oracle控制文件情況,檢查Oracle在線日志情況,檢查Oracle表空間的情況,檢查Oracle所有數(shù)據(jù)文件情況,檢查Oracle所有表、索引、存儲過程、觸發(fā)器、包等對象的情況,檢查Oracle所有回滾段的情況,總共六個部分。3.1 檢查Or

7、acle控制文件狀態(tài)輸出結(jié)果應(yīng)該有2條以上(包含2條)的記錄,“STATUS”應(yīng)該為空。狀態(tài)為空表示控制文件狀態(tài)正常。3.2 檢查Oracle在線日志情況輸出結(jié)果應(yīng)該有3條以上(包含3條)記錄,“STATUS”應(yīng)該為非“INVALID”,非“DELETED”。 注:“STATUS”顯示為空表示正常。3.3 檢查Oracle表空間情況輸出結(jié)果中STATUS應(yīng)該都為ONLINE。3.4 檢查Oracle所有數(shù)據(jù)文件情況輸出結(jié)果中“STATUS”應(yīng)該都為“ONLINE”?;蛘撸狠敵鼋Y(jié)果中“STATUS”應(yīng)該都為“AVAILABLE”。3.5 檢查對象情況3.5.1 檢查對象類別和大小合理分配資源,將

8、冗余以及臨時表定期進行清理,釋放資源空間。3.5.2 檢查無效對象如果有記錄返回,則說明存在無效對象。若這些對象與應(yīng)用相關(guān),那么需要重新編譯生成這個對象。3.6 檢查回滾段情況3.6.1 檢查回滾段狀態(tài)輸出結(jié)果中所有回滾段的“STATUS”應(yīng)該為“ONLINE”。3.6.2 檢查是否有回滾段爭用發(fā)生回滾段爭用時,需要審視爭用情況,即哪些用戶正在使用回滾段資源如果有用戶正在使用,根據(jù)業(yè)務(wù)實際情況采取措施。四、檢查Oracle相關(guān)資源的使用情況主要檢查Oracle相關(guān)資源的使用情況,包含:檢查Oracle初始化文件中相關(guān)的參數(shù)值,檢查數(shù)據(jù)庫連接情況,檢查系統(tǒng)磁盤空間,檢查Oracle各個表空間使用

9、情況,檢查一些擴展異常的對象,檢查system表空間內(nèi)的內(nèi)容,檢查對象的下一擴展與表空間的最大擴展值,總共七個部分。4.1 檢查Oracle初始化文件中相關(guān)參數(shù)值若LIMIT_VALU-MAX_UTILIZATION<=5,則表明與RESOURCE_NAME相關(guān)的Oracle初始化參數(shù)需要調(diào)整??梢酝ㄟ^修改Oracle初始化參數(shù)文件$ORACLE_BASE/dbs/spfileORCL.ora來修改。4.2 檢查數(shù)據(jù)庫連接情況查看當前會話連接數(shù)是否屬于正常范圍。其中:SID,即會話(session)的ID號;SERIAL#,即會話的序列號,和SID一起用來唯一標識一個會話;USERNAM

10、E,即建立該會話的用戶名;PROGRAM,即這個會話是用什么工具連接到數(shù)據(jù)庫的;STATUS,即當前這個會話的狀態(tài),ACTIVE表示會話正在執(zhí)行某些任務(wù),INACTIVE表示當前會話沒有執(zhí)行任何操作;如果建立了過多的連接,會消耗數(shù)據(jù)庫的資源,同時,對一些“掛死”的連接可能需要手工進行清理。如果要手工斷開某個會話,則執(zhí)行:(一般不建議使用這種方式去殺掉數(shù)據(jù)庫的連接,這樣有時候session不會斷開。容易引起死連接。建議通過sid查到操作系統(tǒng)的spid,使用ps ef|grep spidno的方式確認spid不是ORACLE的后臺進程。使用操作系統(tǒng)的kill -9命令殺掉連接 )?!咀ⅰ縐SERN

11、AME列為空)的會話,是Oracle的后臺進程,不要對這些會話進行任何操作。4.3 檢查系統(tǒng)磁盤空間如果文件系統(tǒng)的剩余空間過小或增長較快,需對其進行確認并刪除不用的文件以釋放空間。4.4 檢查表空間使用情況如果空閑表空間比率小于10%以上(包含10%),則注意要增加數(shù)據(jù)文件來擴展表空間而不要是用數(shù)據(jù)文件的自動擴展功能。請不要對表空間增加過多的數(shù)據(jù)文件,增加數(shù)據(jù)文件的原則是每個數(shù)據(jù)文件大小為2G或者4G,自動擴展的最大限制在8G。4.5 檢查一些擴展異常的對象如果有記錄返回,則這些對象的擴展已經(jīng)快達到它定義時的最大擴展值。對于這些對象要修改它的存儲結(jié)構(gòu)參數(shù)。4.6 檢查system表空間內(nèi)的內(nèi)容

12、如果記錄返回,則表明system表空間內(nèi)存在一些非system和sys用戶的對象。應(yīng)該進一步檢查這些對象是否與我們應(yīng)用相關(guān)。如果相關(guān)請把這些對象移到非System表空間,同時應(yīng)該檢查這些對象屬主的缺省表空間值。4.7 檢查對象的下一擴展與表空間的最大擴展值如果有記錄返回,則表明這些對象的下一個擴展大于該對象所屬表空間的最大擴展值,需調(diào)整相應(yīng)表空間的存儲參數(shù)。五、檢查Oracle數(shù)據(jù)庫備份結(jié)果主要檢查Oracle數(shù)據(jù)庫備份結(jié)果,包含:檢查數(shù)據(jù)庫備份日志信息,檢查backup卷中文件產(chǎn)生的時間,檢查oracle用戶的email,總共三個部分。5.1 檢查數(shù)據(jù)庫備份日志信息假設(shè):備份的臨時目錄為/b

13、ackup/hotbakup,我們需要檢查2015年05月06日的備份結(jié)果,則用下面的命令來檢查:如果文件中存在“ERROR:”,則表明備份沒有成功,存在問題需要檢查。5.2 檢查backup卷中文件產(chǎn)生的時間backup卷是備份的臨時目錄,查看輸出結(jié)果中文件的日期,觀察是否是在所設(shè)定的時間范圍內(nèi)完成的備份。如果時間不對則表明熱備份腳本沒執(zhí)行成功。5.3 檢查oracle用戶的email熱備份腳本是通過Oracle用戶的cron去執(zhí)行的。cron執(zhí)行完后操作系統(tǒng)就會發(fā)一條Email通知Oracle用戶任務(wù)已經(jīng)完成。查看Oracle email中在備份計劃的時間內(nèi)有無ORA-,Error,F(xiàn)ai

14、led等出錯信息,如果有則表明備份不正常。六、檢查Oracle數(shù)據(jù)庫性能主要檢查Oracle數(shù)據(jù)庫性能情況,包含:檢查數(shù)據(jù)庫的等待事件,檢查死鎖及處理,檢查cpu、I/O、內(nèi)存性能,查看是否有僵死進程,檢查行鏈接/遷移,定期做統(tǒng)計分析,檢查緩沖區(qū)命中率,檢查共享池命中率,檢查排序區(qū),檢查日志緩沖區(qū),總共十個部分。6.1 檢查數(shù)據(jù)庫的等待事件如果數(shù)據(jù)庫長時間持續(xù)出現(xiàn)大量像latch free,enqueue,buffer busy waits,db file sequential read,db file scattered read等等待事件時,需要對其進行分析,可能存在問題的語句。6.2 D

15、isk Read最高的SQL語句的獲取6.3 查找前十條性能差的SQL語句6.4 等待時間最多的5個系統(tǒng)等待事件的獲取6.5 檢查運行很久的SQL6.6 檢查消耗CPU最高的進程6.7 檢查碎片程度高的表6.8 檢查表空間的I/O比例6.9 檢查文件系統(tǒng)的I/O比例6.10 檢查死鎖及處理查看死鎖若有結(jié)果,則oracle級kill掉該session操作系統(tǒng)kill掉session6.11 檢查數(shù)據(jù)庫CPU、I/O、內(nèi)存性能記錄數(shù)據(jù)庫的cpu使用、IO、內(nèi)存等使用情況,使用vmstat,iostat,sar,top等命令進行信息收集并檢查這些信息,判斷資源使用情況。CPU使用情況內(nèi)存使用情況系統(tǒng)

16、I/O情況系統(tǒng)負載情況6.12 查看是否有僵死進程有些僵死進程有阻塞其他業(yè)務(wù)的正常運行,定期殺掉僵尸進程。6.13 檢查行鏈接/遷移注:含有l(wèi)ong raw列的表有行鏈接是正常的,找到遷移行保存到chained_rows表中,如沒有該表執(zhí)行./rdbms/admin/utlchain.sqlSql>analyze table tablename list chained rows;可通過表chained_rows中table_name,head_rowid看出哪些行是遷移行如:Sql>create table aa as select a.* from sb_zsxx a,chai

17、ned_rows b where a.rowid=b.head_rowid and b.table_name ='SB_ZSXX'sql>delete from sb_zsxx where rowid in (select head_rowid from chained_rows where table_name = 'SB_ZSXX');sql>insert into sb_zsxx select * from chained_row where table_name = 'SB_ZSXX'6.14 定期做統(tǒng)計分析對于采用Oracl

18、e Cost-Based-Optimizer的系統(tǒng),需要定期對數(shù)據(jù)對象的統(tǒng)計信息進行采集更新,使優(yōu)化器可以根據(jù)準備的信息作出正確的explain plan。在以下情況更需要進行統(tǒng)計信息的更新:1、應(yīng)用發(fā)生變化2、大規(guī)模數(shù)據(jù)遷移、歷史數(shù)據(jù)遷出、其他數(shù)據(jù)的導(dǎo)入等3、數(shù)據(jù)量發(fā)生變化查看表或索引的統(tǒng)計信息是否需更新,如:若num_rows與count(*)的行數(shù)相差很多,則該表需要更新統(tǒng)計信息。exec dbms_stats.gather_table_stats(ownname => 'SYS',tabname => 'UTIL_RECOMP_SORTED'

19、,granularity => 'AUTO',cascade => TRUE);6.15 檢查緩沖區(qū)命中率如果命中率低于90% 則需加大數(shù)據(jù)庫參數(shù)db_cache_size。6.16 檢查共享池命中率如低于95%,則需要調(diào)整應(yīng)用程序使用綁定變量,或者調(diào)整數(shù)據(jù)庫參數(shù)shared pool的大小。6.17 檢查排序區(qū)如果disk/(memoty+row)的比例過高,則需要調(diào)整sort_area_size(workarea_size_policy=false)或pga_aggregate_target(workarea_size_policy=true)。6.18 檢查日

20、志緩沖區(qū)如果redo buffer allocation retries/redo entries 超過1% ,則需要增大log_buffer。七、檢查數(shù)據(jù)庫安全性主要檢查Oracle數(shù)據(jù)庫的安全性,包含:檢查系統(tǒng)安全信息,定期修改密碼,總共兩個部分。7.1 檢查系統(tǒng)安全日志信息系統(tǒng)安全日志文件的目錄在/var/log 下,主要檢查登錄成功或失敗的用戶日志信息。檢查登錄成功的日志檢查登錄失敗的日志在出現(xiàn)的日志信息中沒有錯誤(Invalid、refused)提示,如果沒有(Invalid、refused)視為系統(tǒng)正常,出現(xiàn)錯誤提示,應(yīng)作出系統(tǒng)告警通知。7.2 檢查用戶修改密碼在數(shù)據(jù)庫系統(tǒng)上往往存在很多的用戶,如:第三方數(shù)據(jù)庫監(jiān)控系統(tǒng),初始安裝數(shù)據(jù)庫時的演示用戶,管理員用戶等等,這些用戶的密碼往往是寫定的,被很多人知道,會被別有用心的人利用來攻擊系統(tǒng)甚至進行修改

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論