|
導讀數據庫,簡而言之可視為電子化的文件柜——存儲電子文件的處所,用戶可以對文件中的數據進行新增、截取、更新、刪除等操作。所謂“數據庫”是以一定方式儲存在一起、能與多個用戶共享、具有盡可能小的冗余度、與應... 數據庫,簡而言之可視為電子化的文件柜——存儲電子文件的處所,用戶可以對文件中的數據進行新增、截取、更新、刪除等操作。所謂“數據庫”是以一定方式儲存在一起、能與多個用戶共享、具有盡可能小的冗余度、與應用程序彼此獨立的數據集合。 ORACLE性能診斷涉及對象 A. 服務器、網絡以及磁盤(外部的環境) ORACLE性能診斷要遵循上面的順序,先察看服務器是否存在問題,主要從CPU,RAM,DISK配置是否存在問題,檢查操作系統的核心參數的設置等等;如果是跨地域的進行共享的多個ORACLE,網絡通信性能也是非常的關鍵的,ORACLE利用的是TNS(Transparent Network Substrate 透明網絡層)提供數據庫之間的分布傳輸;另外影響ORACLE相應時間的最大的單獨組成部分是磁盤I/O,能夠減少磁盤I/O的任何事情都會對ORACLE的性能產生正面的影響,比如改變ORACLE初始化參數,調整相應的SQL等;對于ORACLE的實例調整應該注意的問題是,過載的ORACLE的SGA會導致嚴重的性能問題,對于ORACLE實例的調整主要包括:初始化參數、數據緩沖存儲(DEFAULT、KEEP、RECYCLE)和SGA中共享池和庫緩存等;還有就是ORACLE對象的調整,包括存儲參數等等;最后是SQL語句的調整。 STATSPACK概述 STATSPACK來源在ORACLE最早版本就存在的UTLBSTAT和UTLESTAT工具。開始的BSTAT-ESTAT工具就可以直接從ORACLE的內存結構中獲取信息。 STATSPACK通過獲取數據庫當前狀態的快照來進行工作。大部分的情況,我們會規劃一個以小時為單位來收集數據的JOB,并在需要的時候請求附加快照。當我們獲取快照時,STATSPACK會從SGA內部的RAM內存結構中采樣,并記錄到相應的STATSPACK表中,注意的是,大多數情況下,SGA中的V$視圖與相應的的STATSPACK表之間存在直接的對應關系,比如: V$SYSSTAT --------->STATS$SYSSTAT SQL> DESC V$SYSSTAT Name Null? Type ----------------------------------------- -------- ---------------------------- SQL> DESC STATS$SYSSTAT Name Null? Type 在理解STATSPACK工具的時候,很關鍵的是要明白通過STATSPACK快照收集的信息是累計值,從V$視圖中收集到起始時間的數據庫信息,然后進行持續累加,知道實例中止,我想,這也許就應該是STATSPACK不能產生兩張跨越SHUTDOWN的快照的報告的原因吧。 對應STATSPACK存在一系列的STATSPACK表,不同的ORACLE版本會有一定的差異。這些表大體上分為控制表、參數表、事件表、事務處理表、并行服務器表、概要表、系統表等等 下面是我列出的ORACLE9I的STATSPACKE表: TABLE_NAME [page_break] STATS$BUFFER_POOL_STATISTICS ------------------------------ 41 rows selected. 其中STATSPACK表的主要錨定點是STATS$DATABASE_INSTANCE,具體的表的介紹我打算放到后面的文章進行討論。 可以說,以前我們的ORACLE性能調整主要是一種REACTIVE TUNNING(反應式調整),通過STATSPACK工具,我們可以進行長期趨勢分析、性能問題事后分析、資源規劃以及預測建模等,我們完全可以采用一種PROACTIVE TUNNING(前瞻式調整)。并且從ORACLE9I開始,ORACLE可以動態的改變ORACLE實例的內存配置,ORACLE也正朝著動態數據庫配置邁進。 全新的路由器不僅讓你更穩定快速地連接無線網絡,更可以讓家中的智能設備連接在一起。 |
溫馨提示:喜歡本站的話,請收藏一下本站!