Oracle巡檢管理守則_第1頁
Oracle巡檢管理守則_第2頁
Oracle巡檢管理守則_第3頁
Oracle巡檢管理守則_第4頁
Oracle巡檢管理守則_第5頁
免費預覽已結(jié)束,剩余6頁可下載查看

下載本文檔

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

文檔簡介

1、巡檢內(nèi)容一、檢查數(shù)據(jù)庫基本狀況主要對數(shù)據(jù)庫的基本狀況進行檢查,其中包含:檢查 Oracle實例狀態(tài), 檢查Oracle服務進程,檢查Oracle監(jiān)聽進程,總共三個部分。1.1 檢查Oracle實例其中“STATUS表示Oracle當前的實例狀態(tài),必須為 “OPEN ;“DATABASE_STATUS示Oracle當前數(shù)據(jù)庫的狀態(tài),必須為“ACTIVE其中,“LOG_MODM示Oracle當前的歸檔方式。 “ARCHIVELOG表示 數(shù)據(jù)庫運行在歸檔模式下,“NOARCHIVEtOGl示數(shù)據(jù)庫運行在非歸檔模 式下。為了數(shù)據(jù)庫的安全性,強烈建議數(shù)據(jù)庫運行在歸檔模式下。1.2 檢查Oracle服務進

2、程在運行Oracle的進程命令輸出后,輸出顯示至少應包含一下一些進程:Oracle寫數(shù)據(jù)文件的進程,輸出顯示為:“ora_dbw0_ORCL ; I I 1P * ,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_ckpt_ORCL' ;Oracle進行恢復

3、的進程,輸出顯示為:“ora_reco_ORCL' ;j v一 一1.3 檢查Oracle監(jiān)聽狀態(tài)“Services Summary”項標識Oracle的監(jiān)聽進程正在監(jiān)聽哪些數(shù)據(jù)庫實例,輸出顯示中至少應該有 “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日志文件Orac

4、le在運行過程中,會在警告日志文件(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)部錯誤(OR- 600)等。定期檢查日志文件,根據(jù)日志中發(fā)現(xiàn)的問題及時進行處理:問題處理啟動參數(shù)不對檢查初始化參數(shù)文件因為檢查點操作或歸檔操作沒有完成造 成重做日志不能切換如果經(jīng)常發(fā)生這樣的情況,可以考慮增加重做日

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

6、則說明 Oracle進程經(jīng)常發(fā)生核心轉(zhuǎn) 儲。這說明某些用戶進程或者數(shù)據(jù)庫后臺進程由于無法處理的原因而異常 退出。頻繁的核心轉(zhuǎn)儲特別是數(shù)據(jù)庫后臺進程的核心轉(zhuǎn)儲會導致數(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ā)器、包等

7、對 象的情況,檢查Oracle所有回滾段的情況,總共六個部分。3.1 檢查Oracle控制文件狀態(tài)輸出結(jié)果應該有2條以上(包含2條)的記錄,“STATUS應該為空。狀 態(tài)為空表示控制文件狀態(tài)正常。*1吟 1/ I,二 J3.2 檢查Oracle 在線日志情況輸出結(jié)果應該有3條以上(包含3條)記錄,“STATUS應該為非 “INVALID',非"DELETED。注:“STATUS顯示為空表示正常。3.3 檢查Oracle表空間情況一; ;'1輸出結(jié)果中STATUS5該者B為ONLINE3.4 檢查Oracle所有數(shù)據(jù)文件情況輸出結(jié)果中“STATUS應該都為“ONLINE

8、。 I; 或者:輸出結(jié)果中“STATUS應該都為“AVAILABLE 。 I3.5 檢查對象情況3.5.1 檢查對象類別和大小合理分配資源,將冗余以及臨時表定期進行清理,釋放資源空間。3.5.2 檢查無效對象如果有記錄返回,則說明存在無效對象。若這些對象與應用相關(guān),那么需 要重新編譯生成這個對象。3.6 檢查回滾段情況3.6.1 檢查回滾段狀態(tài)輸出結(jié)果中所有回滾段的“STATUS應該為“ONLINE 。3.6.2 檢查是否有回滾段爭用發(fā)生回滾段爭用時,需要審視爭用情況,即哪些用戶正在使用回滾段資源如果有用戶正在使用,根據(jù)業(yè)務實際情況采取措施。四、檢查Oracle相關(guān)資源的使用情況主要檢查Ora

9、cle相關(guān)資源的使用情況,包含:檢查 Oracle初始化文件中 相關(guān)的參數(shù)值,檢查數(shù)據(jù)庫連接情況,檢查系統(tǒng)磁盤空間,檢查 Oracle 各個表空間使用情況,檢查一些擴展異常的對象,檢查system表空間內(nèi)的內(nèi)容,檢查對象的下一擴展與表空間的最大擴展值,總共七個部分。4.1 檢查Oracle初始化文件中相關(guān)參數(shù)值若 LIMIT_VALU-MAX_UTILIZATION<=5則表明與 RESOURCE_NAME的 Oracle初始化參數(shù)需要調(diào)整。可以通過修改 Oracle初始化參數(shù)文件 $ORACLE_BASE/dbs/spfileORCL.ora 來修改。 f I I )* 飛 '

10、4.2 檢查數(shù)據(jù)庫連接情況查看當前會話連接數(shù)是否屬于正常范圍。其中:SID,即會話(session)的ID號;SERIAL#即會話的序列號,和SID 一起用來唯一標識一個會話;USERNAM EP建立該會話的用戶名;PROGRA MP這個會話是用什么工具連接到數(shù)據(jù)庫的;STATUS即當前這個會話的狀態(tài),ACTIVE示會話正在執(zhí)行某些任務, INACTIVE表示當前會話沒有執(zhí)行任何操作;如果建立了過多的連接,會消耗數(shù)據(jù)庫的資源,同時,對一些“掛死”的 連接可能需要手工進行清理。如果要手工斷開某個會話,則執(zhí)行:(一般 不建議使用這種方式去殺掉數(shù)據(jù)庫的連接,這樣有時候session不會斷開容易引起死

11、連接。建議通過 sid查到操作系統(tǒng)的spid,使用ps - ef|grep spidno的方式確認spid不是ORACL的后臺進程。使用操作系統(tǒng)的 kill -9命令殺掉連接)。【注】USERNAME為空)的會話,是Oracle的后臺進程,不要對這些會話 進行任何操作。4.3 檢查系統(tǒng)磁盤空間如果文件系統(tǒng)的剩余空間過小或增長較快,需對其進行確認并刪除不用的 文件以釋放空間。4.4 檢查表空間使用情況如果空閑表空間比率小于10蛆上(包含10% ,則注意要增加數(shù)據(jù)文件 來擴展表空間而不要是用數(shù)據(jù)文件的自動擴展功能。請不要對表空間增加 過多的數(shù)據(jù)文件,增加數(shù)據(jù)文件的原則是每個數(shù)據(jù)文件大小為2G或者4

12、G,自動擴展的最大限制在8G4.5 檢查一些擴展異常的對象如果有記錄返回,則這些對象的擴展已經(jīng)快達到它定義時的最大擴展值。對于這些對象要修改它的存儲結(jié)構(gòu)參數(shù)。J j I ;4.6 檢查system 表空間內(nèi)的內(nèi)容如果記錄返回,則表明system表空間內(nèi)存在一些非system和sys用戶的 對象。應該進一步檢查這些對象是否與我們應用相關(guān)。如果相關(guān)請把這些 對象移到非System表空間,同時應該檢查這些對象屬主的缺省表空間值。4.7 檢查對象的下一擴展與表空間的最大擴展值如果有記錄返回,則表明這些對象的下一個擴展大于該對象所屬表空間的 最大擴展值,需調(diào)整相應表空間的存儲參數(shù)。五、檢查Oracle數(shù)

13、據(jù)庫備份結(jié)果主要檢查Oracle數(shù)據(jù)庫備份結(jié)果,包含:檢查數(shù)據(jù)庫備份日志信息,檢查backup卷中文件產(chǎn)生的時間,檢查 oracle用戶的email ,總共三個部5.1 檢查數(shù)據(jù)庫備份日志信息假設(shè):備份的臨時目錄為/backup/hotbakup ,我們需要檢查2015年05月06日的備份結(jié)果,則用下面的命令來檢查:如果文件中存在“ERROR:,則表明備份沒有成功,存在問題需要檢查。5.2 檢查backup卷中文件產(chǎn)生的時間 backup卷是備份的臨時目錄,查看輸出結(jié)果中文件的日期,觀察是否是在 所設(shè)定的時間范圍內(nèi)完成的備份。如果時間不對則表明熱備份腳本沒執(zhí)行 成功。5.3 檢查oracle用

14、戶的email熱備份腳本是通過Oracle用戶的cron去執(zhí)行的。cron執(zhí)行完后操作系統(tǒng) 就會發(fā)一條Email通知Oracle用戶任務已經(jīng)完成。查看 Oracle email中 在備份計劃的時間內(nèi)有無 ORA- Error , Failed等出錯信息,如果有則表 明備份不正常。六、檢查Oracle數(shù)據(jù)庫性能主要檢查Oracle數(shù)據(jù)庫性能情況,包含:檢查數(shù)據(jù)庫的等待事件,檢查 死鎖及處理,檢查cpu、I/O、內(nèi)存性能,查看是否有僵死進程,檢查行鏈 接/遷移,定期做統(tǒng)計分析,檢查緩沖區(qū)命中率,檢查共享池命中率,檢 查排序區(qū),檢查日志緩沖區(qū),總共十個部分。6.1 檢查數(shù)據(jù)庫的等待事件如果數(shù)據(jù)庫長時

15、間持續(xù)出現(xiàn)大量像latch free , enqueue, buffer busywaits , db file sequential read , db file scattered read等等待事件時,需要對其進行分析,可能存在問題的語句。16.2 Disk Read 最高的SQL語句的獲取6.3 查找前十條性能差的SQL語句6.4 等待時間最多的 5個系統(tǒng)等待事件的獲取 I :T-、 “ I ;6.5 檢查運行很久的 SQL6.6 檢查消耗CPU最高的進程6.7 檢查碎片程度高的表6.8 檢查表空間的I/O比例6.9 檢查文件系統(tǒng)的I/O比例6.10 檢查死鎖及處理查看死鎖若有結(jié)果,則

16、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)I/O情況系統(tǒng)負載情況6.12 查看是否有僵死進程有些僵死進程有阻塞其他業(yè)務的正常運行,定期殺掉僵尸進程。I之一6.13 檢查行鏈接/遷移注:含有l(wèi)ong raw列的表有行鏈接是正常的,找到遷移行保存到 f I I 尸.<、-chained_rows 表中,如沒有該表執(zhí)行./rdbm

17、s/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,chained_rowsb where a.rowid=b.head_rowid and b.table_name ='SB_ZSXX' I .,-sql>delete from sb_zsxx where rowid in (se

18、lect head_rowid fromchained_rows where table_name = 'SB_ZSXX'); 一;I .sql>insert into sb_zsxx select * from chained_row wheretable_name = 'SB_ZSXX'6.14 定期做統(tǒng)計分析對于采用Oracle Cost-Based-Optimizer 的系統(tǒng),需要定期對數(shù)據(jù)對象的 統(tǒng)計信息進行采集更新,使優(yōu)化器可以根據(jù)準備的信息作出正確的 explain plan 。在以下情況更需要進行統(tǒng)計信息的更新:1、應用發(fā)生變化2、大規(guī)模數(shù)

19、據(jù)遷移、歷史數(shù)據(jù)遷出、其他數(shù)據(jù)的導入等3、數(shù)據(jù)量發(fā)生變化查看表或索引的統(tǒng)計信息是否需更新,如:若num_rows與count(*)的行數(shù)相差很多,則該表需要更新統(tǒng)計信息。exec dbms_stats.gather_table_stats(ownname =>'SYS' ,tabname =>'UTIL_RECOMP_SORTED' .granularity =>'AUTO' , cascade => TRUE); |6.15 檢查緩沖區(qū)命中率如果命中率低于90%則需加大數(shù)據(jù)庫參數(shù)db_cache_size。6.16 檢查

20、共享池命中率如低于95%則需要調(diào)整應用程序使用綁定變量,或者調(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 檢查日志緩沖區(qū)如果 redo buffer allocation retries/redo entries超過 1% ,貝U需要增大 log_buffer。七、檢查數(shù)據(jù)庫安全性主要檢查 Oracle數(shù)據(jù)庫的安全性,包

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

溫馨提示

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

評論

0/150

提交評論