Oracle統計資訊以及statspack怎麼使用
資料庫工作
任務 計算系統某引數值的命中率
時間 2011-3-8
作業者 胡國青
顯示 命令 提示 說明
Show parameter timed
Alter system set timed_statistics=FALSE; 平時不做系統統計時,把引數設定為假 消耗資源
select name, value from v$sysstat where name in('db block gets', 'consistent gets', 'physical reads');
select 1-('physical reads' / ('db blocks gets' + 'consistent gets')) hit from dual; logical reads='db blocks gets' + 'consistent gets' -緩衝區的 命中率低於80%需要加引數
select * from v$sgastat where pool='shared pool' and name='free memory'; sga統計資訊, 共享記憶體池是否夠用
select count(distinct name) from v$event_name; -事件
select (sum(pins-reloads)) / sum(pins) "lib cache" from v$librarycache; 跟解析語句有關係,結果儲存在記憶體,提取速度快 命中率大於99%最好,不然庫快取太小需要優化, pins總的命中數量 reloads沒有中的命中數量
select(sum(gets-getmisses)) / sum(gets) hit from v$rowcache; 資料字典命中率 保持在85%以上
任務 Diagnostic & Tuning
時間 2011-3-8
作業者 胡國青
Maintenance of the alert.log file
日誌名稱 說明
Alter_SID.log 操作資訊、系統資訊記錄
Alter session set sql_trace = true;或
Dbms_system.set_sql_trace(ID號,子序列號,true[false]) 在會話級別對SQL命令跟蹤下來生成跟蹤檔案,由catprec.sql建立這個包, 使用tkprof產生一個可讀性報表
Statspack
1. Installaction of statspack using the spcreate.sql script
2. collection of statistics execute statspack.snap
3. Automatic collection of statistics using the spauto.sql
4. Product a report using the spreport.sql script
5. To collect timing information, set timed_statistics = TRUE;
Show parameter timed_st
Alter system set timd_statistics = TRUE scope = both;
<1>select file_name from dba_data_files
<2>create tablespace perfstat datafile ‘/u01/perfstat01.dbf’size 500M extent management local extent space management auto;
<3>create temporary tablespace perftemp tempfile ‘/u01/perftemp01.dbf’size 100M ;
<4>以DBA許可權,執行[sql>@path/spcreate.sql]; 其中有spcpkg.lis檔案可以看看 哈哈
<5>connect perfstat/perfstat
<6>execute statspack.snap ----拍照,對系統資訊的統計
<7>執行[sql>@path/spauto.sql]; ---自動拍照,將trunc(sysdate+1/24, ‘HH’),這個指令碼中有兩個24可改成144,隔10分鐘拍一次照;也可以不該
<8>select job, log_user, next_date, interval from user_jobs; 查詢結果中有個 21;[按照個人設定的,這是我個人設定的]
<9> execute statspack.snap ----再拍照
<10>select snap_id from stats$snapshot; ----拍照資訊情況
<11> execute dbms_job_remove(21) ----移除查詢結果的21;
<12>select snap_id from stats$snapshot; ----拍照資訊情況
<13> execute statspack.snap ----再次拍照
<14> @path/spreport.sql 生成報告指令碼 其中 begin_snap值: 1 end_snap值:3 因為一共拍了三次照;report_name:/u01/chain.txt
<15> select snap_id from stats$snapshot; ----拍照資訊情況
看看生成的chain.txt指令碼 很重要
最後:show parameter cursor_sharing: ---關於執行SQL語句是否完全匹配[大小寫字母等]
Alter system set cursor_sharing = similar scope = both; ---會使用繫結變數,利用相似的去擴大命中率
<16> select snap_id, snap_time from stats$snapshot; ----拍照資訊情況
<17>以DBA許可權: 執行 @path/spdrop.sql 刪除
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/25533574/viewspace-690545/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- oracle外部表建立以及收集統計資訊以及臨時表Oracle
- Oracle Statspack的使用Oracle
- 【統計資訊】Oracle統計資訊Oracle
- Oracle statspack工具使用解析Oracle
- ORACLE表統計資訊與列統計資訊、索引統計資訊Oracle索引
- Oracle 統計資訊Oracle
- Oracle統計資訊Oracle
- ORACLE表統計資訊與列統計資訊Oracle
- ORACLE 9i statspack使用Oracle
- Oracle系統統計資訊Oracle
- 【統計資訊】Oracle常用的收集統計資訊方式Oracle
- Oracle收集統計資訊Oracle
- Oracle 統計資訊收集Oracle
- 收集oracle統計資訊Oracle
- ORACLE 收集統計資訊Oracle
- Oracle的統計資訊Oracle
- oracle統計資訊(四)Oracle
- oracle統計資訊(三)Oracle
- oracle統計資訊(二)Oracle
- oracle統計資訊(一)Oracle
- oracle統計資訊 使用dbms_stats包收集統計資料Oracle
- 大量STATSPACK資料統計分析
- Oracle 統計資訊介紹Oracle
- 修改oracle 的統計資訊Oracle
- Oracle多列統計資訊Oracle
- Oracle 9i statspack 使用手冊Oracle
- Oracle之StatspackOracle
- Oracle統計資訊自動收集Oracle
- oracle收集統計資訊job停止Oracle
- oracle之autotrace統計資訊分析Oracle
- Oracle11g 統計資訊-----統計資訊自動收集任務Oracle
- Oracle11g 統計資訊——統計資訊自動收集任務Oracle
- 關於ORACLE自動統計CBO統計資訊Oracle
- oracle statspack詳解Oracle
- Oracle statspack綜合分析Oracle
- oracle statspack 詳解Oracle
- Oracle Statspack ReportOracle
- 【DBMS_STATUS】Oracle控制優化器統計資訊的使用Oracle優化