查看: 3400|回复: 6

[性能调整] 性能优化,请问下面语句是做什么的,什么情况下用到下面SQL语句,造成CPU负荷较高。

[复制链接]
论坛徽章:
0
发表于 2010-8-17 09:09 | 显示全部楼层 |阅读模式
SELECT C1, C2, C3 FROM (SELECT ACC.COLUMN_NAME C1, ACC.CONSTRAIN

T_NAME C2, AC.CONSTRAINT_TYPE C3 FROM ALL_CONS_COLUMNS ACC, ALL_

CONSTRAINTS AC WHERE (AC.CONSTRAINT_TYPE = 'P' OR AC.CONSTRAINT_

TYPE = 'U') AND AC.TABLE_NAME = :B2 AND AC.OWNER = :B1 AND AC.TA

BLE_NAME = ACC.TABLE_NAME AND AC.OWNER = ACC.OWNER AND AC.CONSTR

AINT_NAME = ACC.CONSTRAINT_NAME UNION SELECT AIC.COLUMN_NAME C1,

AI.INDEX_NAME C2, 'U' C3 FROM ALL_INDEXES AI, ALL_IND_COLUMNS A

IC WHERE AI.UNIQUENESS = 'UNIQUE' AND AI.TABLE_NAME = :B2 AND AI

.TABLE_OWNER= :B1 AND AI.TABLE_NAME = AIC.TABLE_NAME AND AI.TABL

E_OWNER = AIC.TABLE_OWNER AND AI.INDEX_NAME = AIC.INDEX_NAME AND

AI.OWNER = AIC.INDEX_OWNER) ORDER BY 3, 2, 1
招聘 : 数据库管理员
认证徽章
论坛徽章:
20
祖国60周年纪念徽章
日期:2009-10-09 08:28:00数据库板块每日发贴之星
日期:2011-02-20 01:01:01ITPUB季度 技术新星
日期:2011-04-02 10:31:09ITPUB十周年纪念徽章
日期:2011-11-01 16:24:042012新春纪念徽章
日期:2012-01-04 11:54:26玉石琵琶
日期:2012-02-21 15:04:38最佳人气徽章
日期:2012-03-13 17:39:18ITPUB 11周年纪念徽章
日期:2012-10-09 18:09:192013年新春福章
日期:2013-02-25 14:51:242011新春纪念徽章
日期:2011-02-18 11:43:33
发表于 2010-8-17 09:29 | 显示全部楼层
不知道是做啥的 去跟你们的开发人员了解业务噻  要优化sql  起码执行计划还是要弄一个出来 不然咋看

使用道具 举报

回复
论坛徽章:
0
 楼主| 发表于 2010-8-17 10:10 | 显示全部楼层
业务里没有用到此语句,上面语句主要是查找系统用户下的两个表 ALL_CONS_COLUMNS 和 ALL_CONSTRAINTS, 关于约束信息的。在运行程序时,此语句占用负荷高。不知道怎么回事?

使用道具 举报

回复
论坛徽章:
23
生肖徽章2007版:虎
日期:2008-01-02 17:35:532010年世界杯参赛球队:日本
日期:2010-05-27 15:15:36生肖徽章2007版:虎
日期:2009-03-10 21:13:27生肖徽章2007版:虎
日期:2008-10-20 20:39:19生肖徽章2007版:虎
日期:2008-10-14 22:25:42生肖徽章2007版:虎
日期:2008-10-11 15:40:21生肖徽章2007版:虎
日期:2008-10-10 12:52:22生肖徽章2007版:虎
日期:2008-10-09 11:14:10生肖徽章2007版:虎
日期:2008-10-06 13:54:36生肖徽章2007版:虎
日期:2008-10-05 18:58:33
发表于 2010-8-17 12:52 | 显示全部楼层
我碰到过客户里面有这个类似信息,做了statspack里面包含相关信息,查看是应用进程发起的sql

使用道具 举报

回复
论坛徽章:
0
 楼主| 发表于 2010-8-17 14:11 | 显示全部楼层

回复 #4 mengxb001 的帖子

请问大哥,什么情况下,应用进程会发起上面的SQL,谢谢。

使用道具 举报

回复
论坛徽章:
1
2009日食纪念
日期:2009-07-22 09:30:00
发表于 2010-8-17 15:17 | 显示全部楼层
看看这个sql对应的会话信息,是那个用户,那个程序执行的

使用道具 举报

回复
论坛徽章:
0
发表于 2010-9-20 16:25 | 显示全部楼层

回复 #1 liudong1983 的帖子

这条语句是:.net的oracleDataAdapter的一些组件,例如,command builder自动调用的.
访问数据字典的优化起来怕不是易事...

想verify它,可以作odp.net的trace.
参考:
Oracle® Data Provider for .NET Developer's Guide 10g Release 2 (10.2)
->Debug Tracing

[ 本帖最后由 chenzm200403 于 2010-9-20 16:29 编辑 ]

使用道具 举报

回复

您需要登录后才可以回帖 登录 | 注册

本版积分规则 发表回复

TOP技术积分榜 社区积分榜 徽章 团队 统计 知识索引树 积分竞拍 文本模式 帮助
  ITPUB首页 | ITPUB论坛 | 数据库技术 | 企业信息化 | 开发技术 | 微软技术 | 软件工程与项目管理 | IBM技术园地 | 行业纵向讨论 | IT招聘 | IT文档
  ChinaUnix | ChinaUnix博客 | ChinaUnix论坛
CopyRight 1999-2011 itpub.net All Right Reserved. 北京盛拓优讯信息技术有限公司版权所有 联系我们 
京ICP备09055130号-4  北京市公安局海淀分局网监中心备案编号:11010802021510 广播电视节目制作经营许可证:编号(京)字第1149号
  
快速回复 返回顶部 返回列表