包收集统计信息物业

干燥设备2021年09月06日

作者:

在9i中,Oracle增强了SQL的基于开销的优化器(CBO),从而在决定SQL语句的最优执行计划时采用I/O和CPU使用率统计信息。

Oracle使用新的Oracle9i DBMS_STATS包来收集这些信息。然而,这个包的功能非常有限,而且因为大多数系统有多种操作模式,所以说在考虑Oracle收集系统统计信息的时候你必须格外小心。

典型地,如果选择使用DBMS_STATS,最好的办法是在数据库进行某种类型的处理时进行采样。例如,假设我们有一个白天运行于OLTP模式下而晚上运行于决策支持系统(DSS)模式下的数据库。

在下面的例子中,白天Oracle在运行于OLTP模式下时收集统计信息;而在晚上,Oracle在运行批处理操作时收集统计信息。

-- Create the table to hold the stats

dbms_eate_Stat_Table (

ownname => \'PROD\',

stattab => \'dbastats\',

tblspace => \'perfstat\');

-- Run during the day; gather stats for when the system is in OLTP mode

BEGIN

dbms_ther_System_Stats(

interval => 300,

stattab => \'dbastats\',

statid => \'OLTP\');

END;

/

-- Start at night to gather stats during batch operations

BEGIN

Dbms_ther_System_Stats(

interval => 300,

stattab => \'mystats\',

statid => \'DSS\');

END;

/

在已经收集了系统统计信息的采样之后,我们就可以在系统改变处理模式的时候动态地切换系统统计。

execdbms_port_system_stats(\'dbastats\',\'OLTP\');

exec dbms_port_system_stats(\'dbastats\',\'BATCH\');

当然,这个特性对于双峰Oracle数据库来说是很基本的,因为对于这种数据库的处理特点变化很大。而对于查询模式恒定的均匀型数据库来说,这个特性与你自己的查询执行计划区别不大。

可免除未来应缴付的保险费 ---------------------------------------------------

本文作者: Donald Burleson是有23年经验的数据库管理员,他出版过14本数据库专著,发表论文达100多篇。Donald Burleson是Oracle Internals的主编和Burleson Oracle Consulting的总裁。

查看本文来源

沈阳卵巢炎哪家好
西宁治疗白癜风医院
心肌梗死高血压治疗方法
相关阅读
专访丨《三仙饭》:已出版的书和不能出版的生活

《三仙煮》是诗作高星写下的关于南京三位儒者——阿坚(赵世坚)、狗子(...

2024-11-18
终于情断?小璐晒照配文心情大好向前看,小贾晚上买醉坐路边

文/李秋水 已对,有媒体曝出小奎晚间与男老友聚都会,当天他身穿白色上衣...

2024-10-28
你若在我方是,情敌三千又何妨

幸福情人生本来并不精细,来来去去不过三个字,不是我幸福你、我叹你,便...

2024-10-25
你说是因为你对我的爱教化了我

你却说是因为你对我的真爱感化了我,使我能这样同在的真爱你,能这样一点...

2024-10-07
经历了3次装修,我发现有8样家具全是“绣花枕头”,不实用性还贵

一个家美不美,完了全都跟着房东的美感来走,有些时候不是我们品位不好,...

2024-07-12
直击调研 | 中材科技(002080.SZ):今年叶片出货量预计同比增加20% 十四五末期膜产能或达

7月5日,中会材科技应用领域(002080.SZ)在接受调研时表示,的公司是杂货店投...

2024-06-09
友情链接