提问题、解决问题、分析问题

有问题提出来,特别是一些自己琢磨不透的问题,大家积极参与,解决问题,然后我会针对这个问题给大家总结一些,大家会有豁然开朗的感觉。希望大家踊跃的参与进来,不要作为潜水一组。

记住:提问题、解决问题,最后还要分析问题、理清思路
标签: 暂无标签
oraunix

写了 199 篇文章,拥有财富 1026,被 339 人关注

转播转播 分享分享 分享淘帖
回复

使用道具

P4 | 发表于 2012-8-8 21:56:22
顶起,感谢老师。。。
回复

使用道具

P4 | 发表于 2012-8-8 23:56:56
{:soso_e179:}
回复

使用道具

P3 | 发表于 2012-8-14 11:37:29
老师你好:
    我请教个问题,在我们系统awr 的top sql里有这么一个sql。
    SELECT NULL AS table_cat,
         o.owner AS table_schem,
         o.object_name AS table_name,
         o.object_type AS table_type,
         NULL AS remarks
         FROM all_objects o
         WHERE o.owner LIKE :1 ESCAPE '/'
         AND o.object_name LIKE :2 ESCAPE '/'
         AND o.object_type IN ('xxx', 'TABLE')
         ORDER BY table_type, table_schem, table_name

这个语句4个小时执行了190万次
我们的数据库是10g,做了集群。数据库的用户有2个用友服务器、有2个电子商务服务器,和10个过磅系统的客户端。
我在google中找到了下面的地址:http://www.talendforge.org/bugs/view.php?id=19328
对这个问题解释的挺多。
但是参考帖子中的问题现象不太一样,他的这个语句执行次数少,速度慢。而我们环境中是执行的很快,但次数太多啦。
请老师帮忙分析下这个语句。
回复

使用道具

P4 | 发表于 2012-8-14 17:02:48
现在还提不出问题,只能先看看别人怎么解决问题了
回复

使用道具

P3 | 发表于 2012-8-15 18:56:53
ei0123 发表于 2012-8-14 11:37
老师你好:
    我请教个问题,在我们系统awr 的top sql里有这么一个sql。
    SELECT NULL AS table_cat ...


说下不成熟的一点想法,即,从这几个方面考虑下:
(1)查看SQL语句的执行计划,看该SQL是否有改进其执行计划的地方;
(2)like子句是否有变换/改进的余地(我猜想,最少owner字段的值应该是比较固定的);
(3)order by是否是必要的。

若是上述方法无效,个人认为可以考虑这样做试试:
(1)创建物化视图,将SQL语句的可能查询结果都存储在该物化视图中(考虑到后面要创建索引,这里可以只存储那3列都是非null的列);
(2)在物化视图上,创建索引,索引列为table_type, table_schem, table_name(注意列的顺序与order by中的顺序一致);
(3)将原SQL查询语句变换为从物化视图来查询数据;
(4)确认变换后的查询的执行计划,确认SQL语句的执行为最优的。

兄弟,再唠叨一下:这种提问可以创建新帖,否则其他人不一定看得到你的问题。
回复

使用道具

您需要登录后才可以回帖 登录 | 加入社区

本版积分规则

意见
反馈