• 博客访问: 618232
  • 博文数量: 26
  • 用 户 组: 普通用户
  • 注册时间: 2008-07-25 17:00
个人简介

暂无介绍

文章分类

全部博文(26)

文章存档

2008年(5)

2007年(21)

我的朋友

发布时间:2007-08-31 15:36:56

在Oracle 11g,SMB是SPM的控制端,SMB是数据字典的一部分,SMB存储在sysaux表空间,SMB存储SQL语句日志,Plan Histories,以及SQL Profiles等,SMB允许每周清除一次未使用的SQL Plan & Log,SMB已经配置了自动存储空间管理。[@more@]1 Disk Space UsageSMB默认可以使用sysaux表空间的10%,SMB被允许使用sysaux的存储范围是1%-50%,每周有后台进程来测量SMB使用sysaux的空间,如果SMB超过了允许的范围,就会在al*.log中写入一条警告,可以通过dbms_spm的configure过程设置SMB允许使用存储空间的范围。BEGIN DBMS_SPM.CONFIGURE('space_......【阅读全文】

阅读(6210) | 评论(0) | 转发(1)

发布时间:2007-08-30 13:34:19

在11g,oracle提供dbms_spm包来管理SQL Plan,SPM是一个预防机制,它记录并评估sql的执行计划,将已知的高效的sql执行计划建立为SQL Plan Baselines,SQL Plan Baseline的功能是保持SQL的性能而不必关注系统的改变。[@more@]1 Capturing SQL Plan Baselines在SQL Plan BaseLines捕获阶段,Oracle记录SQL的执行计划并检测该执行计划是否已经改变,如果SQL改变后的执行计划是安全的,则SQL就使用新的执行计划,因此,Oracle维护单个SQL执行计划的历史信息,Oracle维护的SQL执行计划的历史仅仅针对重复执行的SQL,SQL Plan Baseline可以手工l......【阅读全文】

阅读(3099) | 评论(0) | 转发(0)

发布时间:2007-08-29 16:30:54

从11g开始,表与索引的统计信息收集完毕后,可以选择收集的统信息立即发布,也可以选择使新收集的统计信息处于pending状态,待确定处于pending状态的统计信息是安全的,再使处于pending状态的统计信息发布,这样就会避免一些因为收集统计信息立即发布而导致SQL执行计划走错的灾难。[@more@]1 如何判断是否有pending的统计信息需要生效?SQL> Select dbms_stats.get_prefs('PUBLISH') publish from dual;PUBLISH--------------------------TRUEdbms_stats的get_prefs函数返回true,表示对象的统计信息收集后立即生效,如果返回flase,收......【阅读全文】

阅读(4913) | 评论(0) | 转发(1)

发布时间:2007-08-28 12:14:07

在11g中,dbms_stats package提供了组合列的统计信息的收集,如果在where条件中使用了组合列进行查询,则优化器将会得到更准确的统计信息,进而输出执行计划时,可以输出更接近与真实数据的统计结果,11g的Extended Statistics包含了组合列与表达式统计信息的收集,表过式统计信息收集主要是针对函数索引字段,下面就组合列统计信息的收集做一下测试:[@more@]SQL> create index idx_object_objtype on tmp_objects(object_type,owner) compute statistics;Index created.SQL> select index_name,BLEVEL,LEAF_BLOCKS,DISTINCT_KEYS,......【阅读全文】

阅读(3924) | 评论(0) | 转发(0)

发布时间:2007-08-27 15:41:05

在oracle 10g中,优化统计信息的收集是通过scheduler job来自动完成的,dba可以通过dbms_scheduler package的enable procedure与disable procedure来启动与关闭,在oracle 11g中,oracle提供了全新的package dbms_auto_task_admin来完成统计信息的收集工作,测试脚本如下所示:[@more@]启动:BEGINDBMS_AUTO_TASK_ADMIN.ENABLE(client_name => 'auto optimizer stats collection',operation => NULL,window_name => NULL);END;/关闭:BEGINDBMS_AUTO_TASK_ADMIN.DISABLE(client_name => 'auto optimizer stats collection',op......【阅读全文】

阅读(3192) | 评论(0) | 转发(0)
给主人留下些什么吧!~~
留言热议
请登录后留言。

登录 注册