国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 數據庫 > Oracle > 正文

ORACLE性能診斷―學習statspack筆記(二)[概述]

2024-08-29 13:49:05
字體:
來源:轉載
供稿:網友

  
Oracle性能診斷―學習statspack筆記(二)[概述]

 

作者:劉穎博

時間:2004-3-3

mail:liuyingbo@126.com,請指正

 

轉載請注明出處及作者

 

ORACLE性能診斷涉及對象

 

A.      服務器、網絡以及磁盤(外部的環境)

B.      實例(SGA,后臺進程)

C.      對象(表,索引,段……)

D.     SQL

E.      設計(指的是應用的設計,這部分一般說來是很難改變了)

 

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

 ----------------------------------------- -------- ----------------------------

 STATISTIC#                                         NUMBER

 NAME                                               VARCHAR2(64)

 CLASS                                              NUMBER

 VALUE                                              NUMBER

 

SQL> DESC STATS$SYSSTAT

 Name                                      Null?    Type

 ----------------------------------------- -------- ----------------------------

 SNAP_ID                                   NOT NULL NUMBER(6)

 DBID                                      NOT NULL NUMBER

 INSTANCE_NUMBER                           NOT NULL NUMBER

 STATISTIC#                                NOT NULL NUMBER

 NAME                                      NOT NULL VARCHAR2(64)

 VALUE                                              NUMBER

      

在理解STATSPACK工具的時候,很要害的是要明白通過STATSPACK快照收集的信息是累計值,從V$視圖中收集到起始時間的數據庫信息,然后進行持續累加,知道實例中止,我想,這也許就應該是STATSPACK不能產生兩張跨越SHUTDOWN的快照的報告的原因吧。


       對應STATSPACK存在一系列的STATSPACK表,不同的ORACLE版本會有一定的差異。這些表大體上分為控制表、參數表、事件表、事務處理表、并行服務器表、概要表、系統表等等

下面是我列出的ORACLE9I的STATSPACKE表:

SQL> select table_name from dba_tables where table_name like 'STATS$%';

 

TABLE_NAME

------------------------------

STATS$DATABASE_INSTANCE

STATS$LEVEL_DESCRipTION

STATS$SNAPSHOT

STATS$DB_CACHE_ADVICE

STATS$FILESTATXS

STATS$TEMPSTATXS

STATS$LATCH

STATS$LATCH_CHILDREN

STATS$LATCH_PARENT

STATS$LATCH_MISSES_SUMMARY

STATS$LIBRARYCACHE

 

TABLE_NAME

------------------------------

STATS$BUFFER_POOL_STATISTICS

STATS$ROLLSTAT

STATS$ROWCACHE_SUMMARY

STATS$SGA

STATS$SGASTAT

STATS$SYSSTAT

STATS$SESSTAT

STATS$SYSTEM_EVENT

STATS$session_EVENT

STATS$BG_EVENT_SUMMARY

STATS$WAITSTAT

 

TABLE_NAME

------------------------------

STATS$ENQUEUE_STAT

STATS$SQL_SUMMARY

STATS$SQLTEXT

STATS$SQL_STATISTICS

STATS$RESOURCE_LIMIT

STATS$DLM_MISC

STATS$UNDOSTAT

STATS$SQL_PLAN_USAGE

STATS$SQL_PLAN

STATS$SEG_STAT

STATS$SEG_STAT_OBJ

 

TABLE_NAME

------------------------------

STATS$PGASTAT

STATS$IDLE_EVENT

STATS$PARAMETER

STATS$INSTANCE_RECOVERY

STATS$STATSPACK_PARAMETER

STATS$SHARED_POOL_ADVICE

STATS$SQL_WORKAREA_HISTOGRAM

STATS$PGA_TARGET_ADVICE

 

41 rows selected.

 

其中STATSPACK表的主要錨定點是STATS$DATABASE_INSTANCE,具體的表的介紹我打算放到后面的文章進行討論。

       可以說,以前我們的ORACLE性能調整主要是一種REACTIVE TUNNING(反應式調整),通過STATSPACK工具,我們可以進行長期趨勢分析、性能問題事后分析、資源規劃以及猜測建模等,我們完全可以采用一種PROACTIVE TUNNING(前瞻式調整)。并且從ORACLE9I開始,ORACLE可以動態的改變ORACLE實例的內存配置,ORACLE也正朝著動態數據庫配置邁進。

 

(待續)

……………………………………………………………………………………

參考

Donald K.Burleson《ORACLE HIGH-PERFORMANCE TUNING WITH STATSPACK》

 

 

 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 普定县| 宣恩县| 呼玛县| 河曲县| 彭泽县| 化隆| 阳朔县| 高安市| 安陆市| 永顺县| 灵台县| 泸水县| 蛟河市| 四子王旗| 泗水县| 龙游县| 中阳县| 昌吉市| 盐山县| 汤原县| 孟村| 星子县| 边坝县| 唐山市| 罗源县| 西乡县| 唐海县| 佛学| 武义县| 沁水县| 屯留县| 稷山县| 洱源县| 东至县| 乌海市| 海门市| 百色市| 武山县| 上林县| 略阳县| 宁阳县|