`
nooalou
  • 浏览: 66950 次
  • 性别: Icon_minigender_1
  • 来自: 厦门
社区版块
存档分类
最新评论

关于oracle的性能

    博客分类:
  • java
阅读更多
最近tuxedo频繁出现服务堵塞现象,后来经过测试发现问题出在oracle10G的问题上。

10G自动分析了表,因此执行计划中看到没有用到索引,而结果显然是CBO选择了一条效率并不高的扫描方式进行查询,导致上面结果。

我想问的是,有没有办法解决上面的问题,除了升级oracle。
分享到:
评论
10 楼 weiruan85 2008-12-04  
无语了   
9 楼 kebo 2008-12-03  
zfree 写道
oracle自认为比人聪明了,所以10g以后版本都默认设置CBO方式,实际上呢,CBO就是个鸡肋,经常给人找麻烦。还不如9i稳定。

呵呵,是吗?那也是oracle的人认为比一般人聪明吧。一般导致cbo无法选择最优的方案,是你没有告诉oracle相关的信息。在10g,cbo已经比较好了,这个已经被大多数使用者接受了,好好找找自己的哪儿没有弄好
8 楼 zfree 2008-12-02  
oracle自认为比人聪明了,所以10g以后版本都默认设置CBO方式,实际上呢,CBO就是个鸡肋,经常给人找麻烦。还不如9i稳定。
7 楼 yuechen323 2008-08-21  
或者你贴出来sql语句! 你去itpub看看oracle的提问艺术,我给你贴过来

提问你的oracle problem
0。尝试在google,论坛,metalink,online document里搜索。
1。写清楚你的执行log,报错信息,写清楚DB version , OS
2。Instance 方面的问题,请贴出alertlog
3。network的问题,贴出server的listener.ora , sqlnet.ora 并运行lsnrctl service, 贴出client的tnsnames.ora , sqlnet.ora ,并运行tnsping
4。DB总体性能问题,请于peak time做statspack,并上传statspack report。同时附上CPU/MEM配置,以及CPU IDLE/free menory的情况
5。SQL性能问题,列出当前SQL,以及PLAN。同时应提供表结构,index情况,Table的record数。CBO/RBO,table是否analyze等信息。
6。确保你的问题是Oracle相关。
6 楼 yuechen323 2008-08-21  
优化SQL这个你一定要学好,别总从oracle身上找问题!一般开发人员对sql语句的编写都是很垃圾的,尤其是不懂oracle的开发人员
5 楼 sky000 2008-06-15  
Lucas Lee 写道
既然你知道是CBO选择了效率不搞的方式,那就手动干预Oracle选择更好的方式啊。
一般的Oracle 的SQL里有index hint方式可以使用,
比如select * from tableA use index(better_index_name) inner join TabelB...



首先这个是mysql的hint方式;
其次,在sql中明确指出使用某个index的hint是非常不可取的,会对以后的维护造成非常大的问题,某天你为了性能考虑,需要调整一个索引的时候,索引名称变了,你怎么办?这个时候这个hint就是一个失效的hint,天知道这个时候oracle会走出一个什么样的执行计划,所以非到万不得已的情况,建议还是不要使用hint,尤其是指明索引的hint;
再次,你可以通过关闭oracle自动分析功能,可以通过如下方式:
    exec dbms_scheduler.disable('SYS.GATHER_STATS_JOB');
    或者:
    调整参数:STATISTICS_LEVEL=BASIC
4 楼 LucasLee 2008-05-29  
nooalou 写道
但是这样的话,我们系统非常庞大,这势必要更改大量的代码,几乎不可能。

所有,有没有从oracle的配置上入手解决问题?

因为这个问题在9I上是没有的,所以...唉。

那你就退回到9i不就得了?
这个是最简单的方法。
另外,加入index hint也不会是特别大的工作量,我相信不是每个语句都需要,而应该只有少量的语句无法自动选择最优的查询计划。
3 楼 joachimz 2008-05-28  
采用哪种优化模式是可以设置的吧,你完全可以不用CBO啊。
但实际上,长久看,CBO是一个更好的优化方式。特别是需要长期维护的大系统,否则以后性能问题会不断出现。
2 楼 nooalou 2008-01-13  
但是这样的话,我们系统非常庞大,这势必要更改大量的代码,几乎不可能。

所有,有没有从oracle的配置上入手解决问题?

因为这个问题在9I上是没有的,所以...唉。
1 楼 LucasLee 2008-01-13  
既然你知道是CBO选择了效率不搞的方式,那就手动干预Oracle选择更好的方式啊。
一般的Oracle 的SQL里有index hint方式可以使用,
比如select * from tableA use index(better_index_name) inner join TabelB...

相关推荐

    关于ORACLE性能调整的资料

    这是一本关于ORACLE性能调整与优化的资料

    Oracle性能调优.pdf

    Oracle性能调优 Oracle性能调优 Oracle性能调优 Oracle性能调优 Oracle性能调优 Oracle性能调优 Oracle性能调优

    Oracle性能调优思路

    以下是一些关于Oracle性能调优的详细思路: 1. **检查和更新补丁(PATCH)**:保持Oracle数据库的版本是最新的,及时安装官方发布的安全补丁和性能优化补丁,可以避免已知问题和性能瓶颈。 2. **系统内存参数调整**...

    Oracle 性能诊断艺术

    《Oracle性能诊断艺术》这本书是Oracle数据库管理员(DBA)进阶道路上的重要参考资料。它深入探讨了如何有效地诊断和解决Oracle数据库系统的性能问题,对于优化数据库性能、保障业务稳定运行具有极高的价值。以下是对...

    Oracle性能优化绝版好书:高级OWI与ORACLE性能调整

    《Oracle性能优化绝版好书:高级OWI与ORACLE性能调整》这本书深入探讨了Oracle数据库性能优化的关键技术和策略,特别关注了Oracle Wait Interface (OWI)和性能调整的实践应用。OWI是Oracle数据库中用于监控和诊断...

    Oracle 性能调优的基本方案

    Oracle 性能调优的基本方案 Oracle 性能调优是数据库管理员和开发者非常关心的问题。为了确保数据库的高效运行,需要对 Oracle 性能进行调优。本文将对 Oracle 性能调优的基本方案进行概述,并介绍了该方案的八个...

    高级owi与oracle性能调整.pdf

    根据提供的信息,我们可以推断出这本名为“高级owi与oracle性能调整”的书籍主要讨论了高级owi技术以及Oracle数据库性能优化的相关内容。由于提供的部分页面信息仅包含联系方式,并没有具体的章节内容,因此以下将...

    Oracle数据库性能分析

    ### Oracle数据库性能分析 #### 一、Oracle体系结构 Oracle数据库是一个复杂且功能强大的关系型数据库管理系统(RDBMS),其核心组件包括实例和数据库文件。理解Oracle的体系结构对于优化性能至关重要。 - **实例**...

    oracle性能

    以下是一些关于Oracle性能优化的关键知识点: 1. **Oracle批量绑定(Bulk Bind)**:批量绑定是Oracle提供的一种优化SQL语句执行的方式,特别是对于大量数据操作。`FORALL`与`BULK COLLECT`是PL/SQL中的两个关键字,...

    oracle数据库性能优化.pdf

    除了上述两点,Oracle性能优化还包括索引的建立与管理,分区策略的运用,回滚段的优化,以及查询执行计划的控制等。索引能加速数据检索,但过度的索引会增加写操作的开销,需权衡利弊。分区策略可将大表分解,提高...

    Oracle性能优化与故障诊断案例分享

    Oracle数据库性能优化与故障诊断是数据库管理中极为重要的两个方面,它们直接关系到企业业务系统的稳定运行和性能表现。在这篇文章中,我们将详细探讨针对Oracle数据库性能问题和故障的诊断案例,并分享如何通过案例...

    Oracle性能优化求生指南

    本书以系统而有效的方式详细阐述了oracle性能优化方面的问题,解决了oracle性能管理所有方面的问题,从而堪称oracle调优的“求生指南”。如果英文好的,那就找英文原版看。此书太大,分了五部分压缩上传,下载时只要把...

    oracle性能日志分析报告收集方法

    ### Oracle性能日志分析报告收集方法 在Oracle数据库管理中,性能日志分析是一项非常重要的工作,它能够帮助我们及时发现并解决数据库性能问题。本文将详细介绍如何通过Oracle Enterprise Manager (OEM)来收集...

    Oracle性能监控脚本

    Oracle性能监控是数据库管理员(DBA)日常工作中的一项关键任务,它涉及到对数据库系统的各种性能指标进行跟踪、分析和优化,以确保系统高效稳定运行。本文将深入探讨Oracle性能监控脚本的应用及其重要性,同时提供...

    ORACLE SQL性能优化系列

    ORACLE SQL性能优化系列 ORACLE SQL性能优化是数据库管理员和开发者非常关心的一个话题。为了提高数据库的性能,ORACLE 提供了多种优化技术。下面我们将详细介绍 ORACLE SQL 性能优化系列中的一些重要知识点。 一...

    Oracle性能优化指南

    很抱歉,您提供的文件内容中,关于《Oracle性能优化指南》的标题和描述没有提供具体的详细信息,仅有标题和重复的描述,以及一个与主题无关的Java学习群信息。这不足以形成完整的知识点。为了生成知识点,我需要您...

    oracle性能测试 -

    Oracle性能测试是数据库管理员和IT专业人员至关重要的任务,它涉及到评估Oracle数据库系统的运行效率,以确保数据处理速度、响应时间和资源利用率等关键指标达到预期标准。以下是对Oracle性能测试的详细解读: 一、...

    大牛总结 Oracle性能优化

    Oracle性能优化是数据库管理员和开发人员关注的重要领域,它涉及到一系列技术、工具和策略,旨在提升Oracle数据库的运行效率,减少资源消耗,提高系统响应速度,以及改善用户体验。以下是对Oracle性能优化的详细阐述...

Global site tag (gtag.js) - Google Analytics