• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      關于ORACLE數(shù)據(jù)庫高效運行的探討

      2009-06-29 05:03翟油華
      中國高新技術企業(yè) 2009年10期
      關鍵詞:Oracle數(shù)據(jù)庫健康檢查

      摘要:針對oracle數(shù)據(jù)庫健康檢查,文章提出了一套較為科學全面的健康檢查方案,并分別給出了相關建議。通過對oracle數(shù)據(jù)庫運行狀況進行全面徹底檢查和分析,保障其健康運行。

      關鍵詞:oracle數(shù)據(jù)庫;健康檢查;醫(yī)院管理管理信息系統(tǒng)

      中圖分類號:TP311文獻標識碼:A文章編號:1009-2374(2009)10-0016-02

      醫(yī)院管理管理信息系統(tǒng)(HIS)在醫(yī)院日常工作“扮演”著越來越重要的角色。數(shù)據(jù)庫理所當然的成為了重中之重。在我院信息系統(tǒng)日常管理維護過程中,對Oracle數(shù)據(jù)庫的管理工作特別重要。Oracle數(shù)據(jù)庫健康檢查的重點是醫(yī)院信息系統(tǒng)后臺使用的數(shù)據(jù)庫服務器。檢查中發(fā)現(xiàn)了一些Oracle數(shù)據(jù)庫存在一些問題,突出的是操作系統(tǒng)版本和補丁不一致,數(shù)據(jù)庫補丁不全面,用戶數(shù)據(jù)和系統(tǒng)數(shù)據(jù)共用系統(tǒng)表空間,數(shù)據(jù)庫用戶不正確授予DBA權限,存在無效對象等。這次數(shù)據(jù)庫健康檢查,發(fā)現(xiàn)并現(xiàn)場解決了一些問題,避免了隱患變?yōu)楣收?保證了數(shù)據(jù)庫的正常運行,取得了較好的效果。

      下面簡要介紹有關oracle數(shù)據(jù)庫健康檢查的相關內容,以供DBA日常管理參考之用。

      一、數(shù)據(jù)庫健康檢查的現(xiàn)實意義

      數(shù)據(jù)庫健康檢查是采用一套規(guī)范、科學的方法,通過分析數(shù)據(jù)庫產生的日志文件、Trace文件、參數(shù)文件以及通過數(shù)據(jù)采集產生的Report文件,對數(shù)據(jù)庫本身的運行狀況進行全面徹底檢查和分析,發(fā)現(xiàn)潛在風險,及時提供相應的修補方案,防患于未然。

      二、健康檢查的常用工具

      1.UTLBSTAT/UTLESTAT.

      2.STATSPACK.

      3.第三方專業(yè)工具:Quest、VERITAS Precise產品、CA……

      三、數(shù)據(jù)庫健康檢查的主要內容

      對數(shù)據(jù)庫健康檢查,可以從以下幾個方面進行:(1)基礎信息檢查;(2)數(shù)據(jù)庫總體設計與規(guī)劃檢查;(3)重要參數(shù)的配置檢查;(4)日志文件檢查;(5)數(shù)據(jù)庫備份檢查。

      (一)基礎信息檢查

      檢查的內容主要包括數(shù)據(jù)庫服務器硬件配置狀況(CPU數(shù)目、內存大小等)、存儲(IO Controller數(shù)目、RAID、HD數(shù)目及大小等)、操作系統(tǒng)及版本信息、相關文件系統(tǒng)、Oracle數(shù)據(jù)庫版本信息等。相關建議:

      1.常用檢查系統(tǒng)Unix/Linux命令為:Vmstat/Top/Iostat/Sar等。

      2.峰值時內存使用,CPU利用率,磁盤I0都是非常重要的檢查監(jiān)控內容。

      (二)數(shù)據(jù)庫總體設計與規(guī)劃檢查

      數(shù)據(jù)庫的總體設計與規(guī)劃是系統(tǒng)維護和性能優(yōu)化的基礎,也是健康檢查的一個重點。檢查的主要內容包括以下幾方面:

      1.數(shù)據(jù)庫的規(guī)劃檢查內容。主要是對Oracle安裝文件,控制文件,重做日志文件,歸檔日志文件,回滾段。相關建議:(1)為了安全一般建議創(chuàng)建多個控制文件,且分布在不同的硬盤上;(2)為了使系統(tǒng)性能更好可以創(chuàng)建多重做日志文件組,并建議重做日志文件最好放在最快的單獨磁盤上,以提高性能;(3)建議將數(shù)據(jù)文件、日志文件和控制文件的安置路徑與數(shù)據(jù)庫系統(tǒng)存放在不同的路徑上;(4)根據(jù)硬件設備具體情況,建議做到頻繁讀寫的文件和其他關鍵文件的負載平衡。

      2.表空間和數(shù)據(jù)文件的相關檢查內容:主要檢查以下幾方面的內容:(1)System,Rollback,Temporary,Data,Index,Undo(針對9i)的表空間和數(shù)據(jù)文件的分布,利用率等情況;(2)表空間的碎片率;(3)數(shù)據(jù)文件的Corrupted Block(壞塊)檢查;(4)數(shù)據(jù)文件的I/O分布。

      相關建議:(1)除系統(tǒng)之外的應用不要放在System表空間中。每個應用系統(tǒng)用戶都應該有自己的表空間;(2)所有的ORACLE用戶指定同一個Temporary Tablespace;(3)如有必要,可定時進行碎片合并工作。

      3.表和索引的相關檢查內容。主要檢查以下幾方面的內容:(1)Table/Index的Pctfree,Pctused,Mintrans,Maxtrans參數(shù)是否設置;(2)Table/Index的Storage參數(shù)是否規(guī)劃;(3)大數(shù)據(jù)量的Table/Index是否做分區(qū)管理;(4)Table/Index的Analyze和Rebuild;(5)Chaining Row和Migration Row檢查;(6)Table/Index的Corrupted Block(壞塊)檢查。

      相關建議:(1)Initial Extent應設計的足夠大,盡量能存放該表的所有數(shù)據(jù);對于數(shù)據(jù)量大的表,Next Extent也要設計的足夠大,以降低Oracle對空間的動態(tài)管理;(2)對于更新和插入操作頻繁的表,注意索引的創(chuàng)建和Initial值的設置;(3)對于頻繁使用的表,在數(shù)據(jù)量允許的條件下,可以考慮將其駐留內存,以提高對該表的訪問效率;(4)對INSERT比較頻繁的表,注意設置正確的freelists值;如果采用OPS數(shù)據(jù)庫,還需考慮freelist group的設置;(5)對于數(shù)據(jù)量很大的表,盡量采用表分區(qū)的技術;(6)選擇合理的索引字段,盡量避免用大字段建立索引;(7)均衡表上的索引數(shù)量,不要在表上創(chuàng)建太多的索引,避免Oracle大量維護索引數(shù)據(jù);(8)合理的使用索引,有些情況應避免使用索引,如對表中的數(shù)據(jù)量掃描超過10%。

      4.Oracle其它對象檢查。Oracle數(shù)據(jù)庫中存儲的是各種對象,檢查數(shù)據(jù)對象的狀態(tài)在數(shù)據(jù)庫檢查維護中占有很高比例。需要檢查的對象主要有以下幾類:(1)Sequence檢查;(2)Trigger/ StoredProcedure Function、Package/View的狀態(tài)檢查;(3)Oracle User/Schema檢查;(4)DB Link檢查;(5)檢查失效的約束(dba_constraints)。

      相關建議:(1)可以在視圖all_objects,dba_objects或user_objects中找出無效對象的信息。從all_errors視圖上也能看到狀態(tài)為”INVALID”(無效)的對象的詳細錯誤信息;(2)如果一個包或過程無效,下一次調用將拋出錯誤。通過運行$Oracle_home/rdbms/admin目錄下的utlrp.sql可以防止(解決)此類問題的發(fā)生。utlrp.sql腳本在Oracle8i和Oracle9i已經有了實質的變化,執(zhí)行前請閱讀該腳本;(3)針對以上Oracle對象主要通過dba_users、dba_objects,dba_triggers、dba_jobs、dba_db_links、dba_constraints等字典視圖查詢。

      (三)重要參數(shù)的配置檢查

      重點關注以下參數(shù):

      log_buffer、 db_block_buffers、shared_pool_size 、db_cache_size(oracle 9i) 、sort_area_size 、hash_area_size

      相關建議:(1)綜合考慮操作系統(tǒng),應用系統(tǒng),oracle內存空間分配,OLAP應用與OLTP應用初始化參數(shù)設置有很大區(qū)別;(2)在對Oracle內存設置調整時,可參考Statspack報告信息v$system_event、v$sysstat、v$sesstat、v$latch等視圖信息;(3)share_pool_size大小要適當,使用率應該穩(wěn)定在75%~90%間。如果發(fā)現(xiàn)該共享池命中率不高可以適當?shù)脑黾觭hred_pool_size;(4)log_buffer通常幾百K至1M大小。

      (四)警告日志檢查

      當數(shù)據(jù)庫內部操作出現(xiàn)錯誤,Oracle數(shù)據(jù)庫將通過警告日志提醒用戶,結合相關的跟蹤文件來監(jiān)控數(shù)據(jù)庫。

      主要是對alert_sid.log、sqlnet.log、listener.log等日志文件和Trace文件進行檢查,查看數(shù)據(jù)庫運行期間的狀況報告,檢查和清理應用數(shù)據(jù)庫警報日志文件(alert_sid.log),檢查是否存在數(shù)據(jù)庫系統(tǒng)錯誤提示信息。

      此外還有對Net及SQL*Net產生的Log檢查,以及對產生的Trace文件分析。相關建議:(1)啟動日志監(jiān)控和警告日志的通告是所有數(shù)據(jù)庫管理員任務的重中之重;(2)可以通過Unix或Linux下的corn程序創(chuàng)建一個shell腳本來檢查錯誤日志文件。此外,Oracle的外部表特性也允許直接使用SQL來查詢警告日志;(3)值得注意的是,警告日志文件將會變的越來越大,建議將其保持一個易于管理的大小,可以通過重命名文件來備份當前版本,下一次要寫日志將導致創(chuàng)建一個新的警告日志;(4)對于日志文件中記錄的錯誤信息給予記錄和分析。

      (五)數(shù)據(jù)庫備份檢查

      主要是針對備份方案的技術審查,檢查方案整體的可行性??陀^條件允許的情況下,應該進行完整的備份恢復測試,以保證數(shù)據(jù)庫能在系統(tǒng)發(fā)生故障的情況下可以順利恢復。相關建議:

      1.針對生產數(shù)據(jù)庫,根據(jù)設備的情況和各局的數(shù)據(jù)量(包括庫的大小和每天產生歸檔日志文件的多少)來決定備份的頻率。

      2.建議數(shù)據(jù)量大的每周兩次數(shù)據(jù)庫全備份,每日兩次歸檔日志的備份,數(shù)據(jù)量小的每周一次數(shù)據(jù)庫全備份,每日一次歸檔日志的備份。備份的頻率主要從恢復的時間來考慮,歸檔日志太多恢復時間會比較長。有了全備份,在某個表空間被損壞的情況下,也可以進行單個表空間的恢復。

      3.如果條件允許,定期校驗備份,比如恢復測試倒測試環(huán)境。

      除了以上列述的項是數(shù)據(jù)庫健康檢查的主要方面外,還應對oracle的主要補丁;RAC環(huán)境下負載分配、接管;第三方軟件等情況進行安全檢查。

      四、結語

      Oracle數(shù)據(jù)庫在醫(yī)療衛(wèi)生行業(yè)(醫(yī)院管理信息系統(tǒng))中應用非常廣泛,健康穩(wěn)定的Oracle數(shù)據(jù)庫是醫(yī)療衛(wèi)生單位信息系統(tǒng)穩(wěn)定高效運轉的基礎條件。健康檢查是數(shù)據(jù)庫維護工作的基礎,應定期對Oracle數(shù)據(jù)庫進行健康檢查工作,保障醫(yī)院信息系統(tǒng)安全穩(wěn)定。

      參考文獻

      [1]April Wells著,孫楊譯.Oracle DBA日常管理[M].清華大學出版社,2007.

      [2]蓋國強,馮春培,葉梁,馮大輝.Oracle數(shù)據(jù)庫性能優(yōu)化[M].人民郵電出版社,2005.

      作者簡介:翟油華(1974-),男,江蘇興化人,南京醫(yī)科大學第二附屬醫(yī)院信息科工程師,研究方向:軟件工程。

      猜你喜歡
      Oracle數(shù)據(jù)庫健康檢查
      成都市13468名育齡男性孕前優(yōu)生健康檢查分析
      孕前優(yōu)生健康檢查中護理健康教育的作用分析
      陜西省旬陽縣孕前優(yōu)生健康檢查結果分析及預防研究
      更 正
      得荣县| 梨树县| 宜兴市| 军事| 宝山区| 景德镇市| 攀枝花市| 鄂托克旗| 嘉祥县| 瑞昌市| 弋阳县| 黄石市| 邢台县| 田东县| 原阳县| 临西县| 马龙县| 崇阳县| 新津县| 襄城县| 大田县| 潞城市| 赤城县| 柳江县| 乐山市| 惠水县| 锦州市| 浮山县| 汉源县| 香港| 北流市| 舟山市| 莱芜市| 广东省| 聊城市| 开鲁县| 得荣县| 鹿邑县| 仪征市| 丰台区| 东乡县|