亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 開發 > 綜合 > 正文

教你輕松掌握statspack報表的使用方法

2024-07-21 02:43:44
字體:
來源:轉載
供稿:網友
 

"statspack"的一些使用技巧:

一 怎樣修改statspack的腳本產生自定義報表?

通常statspack報表可以滿足大部分的需要,有時我們需要對產生報表的腳本進行一些微小的修改,這樣產生的報表將會更有用途。

比如說某些SQL很多,但在statspack產生的報表中,每個SQL只顯示5行,結果有些比較長的SQL就只能看到一部分;又如在top events部分,標準的報表只顯示top 5,其實我們可以顯示更多的events,那如何修改呢?用編輯工具(在linux下用vi)打開($Oracle_HOME/rdbms/admin/sPRepins.sql)

define top_n_events = 5;      // top 5 eventsdefine top_n_sql = 65;        // top sqldefine top_n_segstat = 5;     // top 5 segstatdefine num_rows_per_hash=5;   // 每個SQL顯示5行

就看到在該腳本中已經定義了一些常數,我們只需要把它改為我們需要的值。

define top_n_events = 10;     // top 10 events     define top_n_sql = 65;    // top sql          define top_n_segstat = 10;  // top 10 segstat    define num_rows_per_hash=10; // 每個SQL顯示10行

修改后,我們就可以看到效果了.

二 如何用statspack的報表確定熱表及索引?

如果想用statspack表確定熱表及索引,必須修改statspack快照的收集級別,8i中statspack共有三種快照級別,默認值是5。

select * from STATS$level_DESCRipTION;SNAP_LEVEL DESCRIPTION---------- -------------------------

0 一性性能統計:包含回退段狀態、字典緩存、SGA、系統事件、后臺事件、會話事件、系統統計、等待統計、鎖統計、閂鎖統計。

5 增加了收集SQL的信息、并包括0級收集的信息。

10 增加了收集子閂鎖的信息,并包括所有低級別的信息。

在9i中statspack共有五種快照級別,默認值是5。

select * from STATS$level_DESCRIPTION;SNAP_LEVEL DESCRIPTION---------- ----------------------------

0 一性性能統計:包含回退段狀態、字典緩存、SGA、系統事件、后臺事件、會話事件、系統統計、等待統計、鎖統計、閂鎖統計

5 增加了收集SQL的信息、并包括0級收集的信息。

6 增強了在SQL收集信息方面的功能(列出占用資源較高的SQL),并包所有低級別的信息。

7 增加了收集段級別的統計信息(如段的邏輯讀與物理讀、行鎖、ITL及buffer busy waits),

并包括所有低級別的信息。

10 增加了收集子閂鎖的信息,并包括所有低級別的信息。

如果你收用statspack確定熱表及熱索引,那就需要使用7/10的級別來收集快照。

//通過這樣的設置,以后的收集級別都將是7級。

//如果你只是想本次改變收集級別,可以忽略i_modify_parameter參數。

SQL>execute statspack.snap(i_snap_level=>7,i_modify_parameter=>true); SQL>execute statspack.snap(i_snap_level=>7);

修改完收集級別后,那大家就可以根據自己的需要設定收集的頻率,現在我們只需要注意statspack報表中的“段級別的統計信息”:

Top 5 Logical Reads per Segment for DB: ESAL  Instance: esal  Snaps: 2368 -2380-> End Segment Logical Reads Threshold: 10000                                           Subobject  Obj.       LogicalOwner      Tablespace Object Name          Name       Type         Reads  %Total---------- ---------- -------------------- ---------- ----- ------------ -------CYBERCAFE  TS_CYBERCA AGENT_CARD_TYPE                 TABLE  115,220,864   18.07CYBERCAFE  TS_CYBERCA GAME_CARD_TYPE                  TABLE   79,103,600   12.40CYBERCAFE  TS_CYBERCA AGENT_TASK                      TABLE   57,030,304    8.94CYBERCAFE  TS_CYBERCA AGENT_PRICE_LEVEL_OW            TABLE   46,393,968    7.28CYBERCAFE  TS_CYBERCA IDX_ASL_RESLOG_ID               INDEX   23,261,600    3.65---------------------------------------------------------Top 5 Physical Reads per Segment for DB: ESAL  Instance: esal  Snaps: 2368 -2380-> End Segment Physical Reads Threshold:    1000                                           Subobject  Obj.      PhysicalOwner      Tablespace Object Name          Name       Type         Reads  %Total---------- ---------- -------------------- ---------- ----- ------------ -------CYBERCAFE  TS_CYBERCA AGENT_GAME_CARD_GM13            TABLE       76,476    7.36CYBERCAFE  TS_CYBERCA AGENT_SALE_LOG       ASL_200500 TABLE       61,270    5.89CYBERCAFE  TS_CYBERCA RESELLER_LOG         RL_200412  TABLE       48,950    4.71CYBERCAFE  TS_CYBERCA AGENT_GAME_CARD_GM14            TABLE       46,259    4.45CYBERCAFE  TS_CYBERCA AGENT_CAPITAL_LOG    ACL_200500 TABLE       45,476    4.37-------------------------------------------------------------Top 5 Buf. Busy Waits per Segment for DB: ESAL  Instance: esal  Snaps: 2368 -2380-> End Segment Buffer Busy Waits Threshold:     100                                           Subobject  Obj.   Buffer BusyOwner      Tablespace Object Name          Name       Type         Waits  %Total---------- ---------- -------------------- ---------- ----- ------------ -------CYBERCAFE  TS_CYBERCA AGENT_TASK                      TABLE           22   36.07CYBERCAFE  TS_CYBERCA AGENT_CARD_TYPE                 TABLE            9   14.75CYBERCAFE  TS_CYBERCA IDX_RESACC_UPDTIME              INDEX            5    8.20CYBERCAFE  TS_CYBERCA AGENT_SALE_LOG       ASL_200501 TABLE            4    6.56CYBERCAFE  TS_CYBERCA IDX_ACL_ACPITAL_LOGI            INDEX            4    6.56-------------------------------------------------------------Top 5 Row Lock Waits per Segment for DB: ESAL  Instance: esal  Snaps: 2368 -2380-> End Segment Row Lock Waits Threshold:     100                                           Subobject  Obj.      Row LockOwner      Tablespace Object Name          Name       Type         Waits  %Total---------- ---------- -------------------- ---------- ----- ------------ -------CYBERCAFE  TS_CYBERCA IDX_APL_GCTID2       APL_200501 INDEX           54   24.77CYBERCAFE  TS_CYBERCA IDX_RB_RESELLER_ID              INDEX           41   18.81CYBERCAFE  TS_CYBERCA IDX_RL_RESLOG_ID                INDEX           38   17.43CYBERCAFE  TS_CYBERCA IDX_ACT_ACT_ID                  INDEX           17    7.80CYBERCAFE  TS_CYBERCA IDX_SERVICE_ID                  INDEX           14    6.42-------------------------------------------------------------

在這里可以看到邏輯讀/物理讀/緩存忙/行鎖符合條件的一些對象,通過這些對象,可以確定熱的表及索引,然后分析如何對業務進行優化,降低對這些表的訪問量等。如果你覺得顯示top 5 segment不夠的話,可以按一所述修改top_n_segstat,然后就可以顯示更多的符合條件的對象,然后將這些熱表放到keep池中。

三 如何用statspack的報表確定keep池與default池的分配?

如果你想使用default池與keep池,在9i中需要分配db_cache_size及db_keep_cache_size參數,但如何確定它們的大小呢?我們可以根據2所示的一些熱表,計算熱表放入keep池需要的內存,然后用將表放入相應的pool中。

alter table &table_name storage(buffer_pool &buffer_pool);

將確定的熱表放入keep中之后,然后收集一段時間后再產生一個新的報表:

Buffer Pool Statistics for DB: ESAL  Instance: esal  Snaps: 2277 -2289-> Standard block size Pools  D: default,  K: keep,  R: recycle-> Default Pools for other block sizes: 2k, 4k, 8k, 16k, 32k                                                           Free    Write  Buffer     Number of Cache      Buffer    Physical   Physical  Buffer Complete    BusyP      Buffers Hit %        Gets       Reads     Writes   Waits    Waits   Waits--- ---------- ----- ----------- ----------- ---------- ------- --------  ------D      128,128  99.7 482,298,597   1,557,980    265,662       0        0      88K       32,032 100.0 372,560,023      13,951     42,405       0        0      17-------------------------------------------------------------

確定keep池與default的需要內存時,可以根據這一部分對keep池與default池的大小進行評估,如果K所標識的cache hit%比較小,說明keep池不足,如果D顯示的cache hit%比較小,說明default池分配懷足,如果K是的default顯示是100%,那們可以將更多的熱表放入到keep池中,然后經過一段時間的調整,相信可以將default池與keep池調到一個相對比較合適的集團。

四 如何用crontab定期產生statspack的報表?

看了一段時間的statspack報表后,就懶于每天手工去產生一個報表,那如何產系統自動產生一個報表呢?

經過測試,用crontab可以方便地產生報表,然后通過sendmail直接發到相關人員的郵箱中。

[oracle@www1 sql]$ more backup/auto_send_perf.sh #!/bin/sh. ~oracle/.bash_profile/home/oracle/product/9.2.0/bin/sqlplus -s aaa/bbb@ccc<<!set head offset timing offspool /home/oracle/sql/backup/snap_begin.lstselect min(snap_id) snap_id from stats$snapshotwhere snap_time between trunc(sysdate) and trunc(sysdate)+1;spool offspool /home/oracle/sql/backup/snap_end.lstselect max(snap_id) snap_id from stats$snapshotwhere snap_time between trunc(sysdate) and trunc(sysdate)+1;spool offexit!BEGIN_SNAP=`cat /home/oracle/sql/backup/snap_begin.lst | tail -n 2`END_SNAP=`cat /home/oracle/sql/backup/snap_end.lst | tail -n 2`#END_SNAP=`expr $BEGIN_SNAP + 13`REPORT_NAME=/home/oracle/sql/report/sp`date +%m%d`_ac/home/oracle/product/9.2.0/bin/sqlplus -s aaa/bbb@ccc<<!define begin_snap=$BEGIN_SNAPdefine end_snap=$END_SNAPdefine report_name=$REPORT_NAME@?/rdbms/admin/spreportexit!mail -s "perfstat report" ddd@eee.fff < /home/oracle/sql/report/sp`date +%m%d`_ac.lst[oracle@www1 sql]$crontab -l* 21 * * * /home/oracle/sql/backup/auto_send_perf.sh >> /home/oracle/sql/backup/perf.lst 2>&1

注釋:早上8點至晚上8點之間進行快照收集,9點執行cron進程啟動,產生報表的快照也限于當天收集的快照,將當天最小的snap_id與最大的snap_id放到兩個文件中,在sheel中讀出,并計算出一個報表名稱,

最后產生的報表通過"sendmail"發送到相關人員的郵箱,此后每晚只需要收郵件就即以看到當天的報表。


發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
亚洲国产精品va在看黑人| 亚洲国产精久久久久久| 国产精品扒开腿爽爽爽视频| 国产精品美女主播| 日韩欧美在线一区| 欧美野外猛男的大粗鳮| 日韩电影在线观看中文字幕| 欧美性猛交视频| 精品国产乱码久久久久久天美| 国产精品久久久| 亚洲丁香婷深爱综合| 国产一区二区三区免费视频| 成人免费视频网址| 国产欧美日韩专区发布| 一区二区三区黄色| 91sa在线看| 亚洲缚视频在线观看| 91成人在线观看国产| 国产精品久久二区| 欧洲精品毛片网站| 欧美成在线视频| 97香蕉久久超级碰碰高清版| 国产精品美女午夜av| 成人黄在线观看| 精品视频在线播放| 在线播放国产一区二区三区| 色老头一区二区三区在线观看| 国产精品一久久香蕉国产线看观看| 丝袜亚洲欧美日韩综合| 亚洲成人中文字幕| 国产精品爱久久久久久久| 国产亚洲激情在线| 久久69精品久久久久久国产越南| 亚洲欧美精品suv| 久久精品国产久精国产一老狼| 久久韩国免费视频| 91精品国产99久久久久久| 成人妇女淫片aaaa视频| 久久九九国产精品怡红院| 精品中文字幕久久久久久| 亚洲在线观看视频| 在线视频中文亚洲| 亚洲午夜精品久久久久久久久久久久| 午夜精品福利在线观看| 9.1国产丝袜在线观看| 91精品一区二区| 国产精品av网站| 日韩精品视频免费专区在线播放| 色青青草原桃花久久综合| 91av成人在线| 激情成人中文字幕| 欧美日韩裸体免费视频| 8090理伦午夜在线电影| 91亚洲精华国产精华| 久久国产精品久久久久久久久久| 欧美在线一级va免费观看| 日韩风俗一区 二区| 国内精品免费午夜毛片| 久久精品国产亚洲精品2020| 日韩日本欧美亚洲| 精品视频—区二区三区免费| 亚洲专区国产精品| 亚洲男人av在线| 日韩欧美aaa| 欧美高清激情视频| 日韩免费观看在线观看| 96精品久久久久中文字幕| 亚洲成人网在线| 免费成人高清视频| 日本乱人伦a精品| 久久久亚洲影院你懂的| 久久久久久久亚洲精品| 亚洲肉体裸体xxxx137| 91精品国产色综合久久不卡98| 中文字幕久精品免费视频| 欧美激情乱人伦一区| 国产精品一区久久久| 久久久91精品国产一区不卡| 亚洲视频精品在线| 日本道色综合久久影院| 国产欧美一区二区三区久久人妖| 久久天堂av综合合色| 国产99久久久欧美黑人| 中文欧美在线视频| 日韩欧美有码在线| 亲爱的老师9免费观看全集电视剧| 精品国产一区二区三区久久狼黑人| 国产91精品在线播放| 欧美电影在线观看完整版| 亚洲欧美中文日韩v在线观看| 亚洲欧美中文在线视频| 91精品国产91久久久久久最新| 亚洲欧美变态国产另类| 亚洲精品小视频在线观看| 中文字幕综合在线| 欧美有码在线观看| 亚洲精品色婷婷福利天堂| 亚洲天堂成人在线| 7777精品视频| 欧美视频在线观看免费| 亚洲欧洲在线看| 国产欧美va欧美va香蕉在| 91久久精品日日躁夜夜躁国产| 色综合伊人色综合网| 美女国内精品自产拍在线播放| 97国产suv精品一区二区62| 91成人天堂久久成人| 一区二区三区www| 久久天天躁狠狠躁夜夜躁2014| 久久久伊人欧美| 亚洲精品视频在线播放| 欧美区二区三区| 国模精品系列视频| 亚洲天堂男人天堂| 美日韩精品免费观看视频| 97精品国产97久久久久久| 国产精品久久久久久久7电影| 国产69精品久久久久99| 精品露脸国产偷人在视频| 亚洲视频网站在线观看| 国产一区二区三区毛片| 成人免费淫片视频软件| 97视频国产在线| 欧美精品www| 欧美第一黄网免费网站| 国产精品老女人视频| 欧美亚洲日本网站| 免费不卡欧美自拍视频| 精品久久久久久亚洲国产300| 成人精品久久一区二区三区| 欧美有码在线视频| 91在线视频一区| 色婷婷久久一区二区| 亚洲国产精品资源| 欧美裸体xxxx极品少妇| 久久久久久噜噜噜久久久精品| 国产精品免费视频久久久| …久久精品99久久香蕉国产| 欧美一级免费看| 中文欧美日本在线资源| 精品自在线视频| 成人午夜在线视频一区| 国产精品三级久久久久久电影| 亚洲欧美激情视频| 精品香蕉在线观看视频一| 韩国美女主播一区| 在线观看国产成人av片| 国产噜噜噜噜噜久久久久久久久| 97精品在线观看| 国产精品av在线| 国产精品日韩欧美综合| 狠狠操狠狠色综合网| 国产精品劲爆视频| 国产精品1234| 国产福利成人在线| 岛国av一区二区| 久久亚洲欧美日韩精品专区| 97色在线播放视频| 欧美日韩精品在线播放| 蜜臀久久99精品久久久无需会员| 久久好看免费视频| 最新91在线视频| 日韩av男人的天堂| 成人午夜高潮视频|