描述:
select count(*)从v $锁查询慢解决方法,具体原因看官方优化文档哈
<代码>完成;设置时间 00:51:52完成;从v $锁select count (*); COUNT (*) ---------- 35 ——需要十几秒才能返回结果。 00:55:10完成;选择/* +规则*/count(*)从v $锁; COUNT (*) ---------- 35 00:55:38完成; 方法1: 添加提示 方法2: 收集统计信息 金属氧化物半导体参考文档 查询v $锁从OEM执行缓慢(文档ID 1328789.1) 搜集统计信息方法如下: 为固定对象13.2.5收集统计数据 固定的对象是动态性能表及其索引。这些对象记录当前的数据库活动。 与其他数据库表,数据库并不会自动使用动态SQL语句引用的统计数据X美元表时,优化器统计数据丢失。相反,优化器使用预定义的默认值。这些默认值可能不是代表和可能导致次优的执行计划。因此,重要的是要保持固定对象当前的统计数据。 Oracle数据库自动收集固定对象统计数据作为统计数据的自动收集的一部分,如果他们没有以前收集的。你也可以手动固定对象通过调用DBMS_STATS.GATHER_FIXED_OBJECTS_STATS收集统计信息。Oracle建议你收集统计数据时,数据库有代表性的活动。 先决条件 您必须SYSDBA或分析任何词典系统特权来执行这个过程。 收集模式使用GATHER_FIXED_OBJECTS_STATS统计: 在SQL * + SQL开发人员,或登录数据库的用户必要的特权。 例13 - 2收集统计数据表 下面的例子使用了DBMS_STATS包收集固定对象的统计数据。 开始 DBMS_STATS.GATHER_FIXED_OBJECTS_STATS; 结束;/参见: “配置优化器自动统计信息收集 Oracle数据库PL/SQL包和类型参考了解GATHER_TABLE_STATS过程 父主题:收集优化器手动统计代码>