oracle select count 慢,select count(*) from v$lock 查询慢

描述:

select count(*) from v$lock 查询慢 解决方法,具体原因看官方优化文档哈

SQL> set time on

00:51:52 SQL> select count(*) from v$lock;

COUNT(*)

----------

35

--需要十几秒才能返回结果。

00:55:10 SQL> select /*+ rule */ count(*) from v$lock;

COUNT(*)

----------

35

00:55:38 SQL>

方法1:

添加hint

方法2:

收集统计信息

MOS参考文档

Query Against v$lock Run from OEM Performs Slowly (文档 ID 1328789.1)

搜集统计信息方法如下:

13.2.5 Gathering Statistics for Fixed Objects

Fixed objects are dynamic performance tables and their indexes. These objects record current database activity.

Unlike other database tables, the database does not automatically use dynamic statistics for SQL statement referencing X$ tables when optimizer statistics are missing. Instead, the optimizer uses predefined default values. These defaults may not be representative and could potentially lead to a suboptimal execution plan. Thus, it is important to keep fixed object statistics current.

Oracle Database automatically gathers fixed object statistics as part of automated statistics gathering if they have not been previously collected. You can also manually collect statistics on fixed objects by calling DBMS_STATS.GATHER_FIXED_OBJECTS_STATS. Oracle recommends that you gather statistics when the database has representative activity.

Prerequisites

You must have the SYSDBA or ANALYZE ANY DICTIONARY system privilege to execute this procedure.

To gather schema statistics using GATHER_FIXED_OBJECTS_STATS:

In SQL*Plus or SQL Developer, log in to the database as a user with the necessary privileges.

Example 13-2 Gathering Statistics for a Table

This example uses the DBMS_STATS package to gather fixed object statistics.

BEGIN

DBMS_STATS.GATHER_FIXED_OBJECTS_STATS;

END;

/

See Also:

"Configuring Automatic Optimizer Statistics Collection"

Oracle Database PL/SQL Packages and Types Reference to learn about the GATHER_TABLE_STATS procedure

Parent topic: Gathering Optimizer Statistics Manually

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值