在 MOS 上发了SR、问 v$segment_statistics 是如何更新的?Oracle 答曰:v$segment_statisitcs自 9IR2 引入以来、仅用作 internal research【这回答、坑爹嘛】㈠ 先看表结构:sys@ORCL> desc v$segment_statistics
Name Null? Type
----------------------------------------------------- -------- ------------------------------------
OWNER VARCHAR2(30) #对象所有者
OBJECT_NAME VARCHAR2(30) #对象名称
SUBOBJECT_NAME VARCHAR2(30) #子对象名称
TABLESPACE_NAME VARCHAR2(30) #对象所在表空间
TS# NUMBER #表空间标识
OBJ# NUMBER #字典对象标识
DATAOBJ# NUMBER #数据对象标识
OBJECT_TYPE VARCHAR2(18) #对象类型
STATISTIC_NAME VARCHAR2(64) #统计项名称
STATISTIC# NUMBER #统计项标识
VALUE NUMBER #统计项值、单位是 访问次数㈡ 接着谈适用场景可用于监测段级(segment_level)统计项、鉴定性能问题源于表或者索引我们就可以据此分析数据库中是否有部分对象的访问过于集中、等待过于频繁例如、对于ITL等待较高的对象、则可以考虑为其增加更多的事务槽㈢ 然后瞧个例子使用 v$segment_statistics 找到最经常访问的表sys@ORCL> ed
Wrote file afiedt.buf 1 SELECT t.owner,t.table_name,lr.value+pr.value AS total_reads
2 FROM
3 (SELECT owner,object_name,value FROM v$segment_statistics WHERE statistic_name="logical reads") lr,
4 (SELECT owner,object_name,value FROM v$segment_statistics WHERE statistic_name="logical reads") pr, dba_tables t
5 WHERE lr.owner=pr.owner AND
6 lr.object_name=pr.object_name AND
7 lr.owner=t.owner AND
8 lr.object_name=t.table_name
9* ORDER BY 3 desc
sys@ORCL> /OWNER TABLE_NAME TOTAL_READS
------------------------------ ------------------------------ ------------
SYS WRI$_OPTSTAT_HISTGRM_HISTORY 14080
SYS WRI$_OPTSTAT_HISTHEAD_HISTORY 4736
SYSMAN MGMT_METRIC_COLLECTIONS 4000
SYS HIST_HEAD$ 3936
SYS COL_USAGE$ 3104
SYS FIXED_OBJ$ 2912
SYSMAN MGMT_SYSTEM_PERFORMANCE_LOG 2688更多Oracle相关信息见Oracle 专题页面 http://www.linuxidc.com/topicnews.aspx?tid=12Oracle 初始化参数是静态 & 动态MySQL utf8mb4 字符集:支持 emoji 表情符号相关资讯 Oracle学习
- Oracle学习之数据库数据保存成文件 (01月27日)
- Oracle 学习之:ASCII,CHR函数的 (05/14/2013 19:28:45)
| - 学习Oracle需要掌握的重要知识点 (06/04/2013 16:27:40)
- Oracle 学习之:for循环中包涵 (05/14/2013 19:27:27)
|
本文评论 查看全部评论 (0)