oracle
文章平均质量分 80
zc2003
这个作者很懒,什么都没留下…
展开
-
Oracle SQL性能优化
Oracle SQL性能优化(1) 选择最有效率的表名顺序(只在基于规则的优化器中有效):ORACLE的解析器按照从右到左的顺序处理FROM子句中的表名,FROM子句中写在最后的表(基础表 driving table)将被最先处理,在FROM子句中包含多个表的情况下,你必须选择记录条数最少的表作为基础表。如果有3个以上的表连接查询, 那就需要选择交叉表(intersectio转载 2012-06-09 22:33:13 · 403 阅读 · 0 评论 -
Oracle数据库的性能调整
Oracle数据库的性能调整oracle是一个高性能数据库软件。用户可以通过参数的调整,达到性能的优化。性能优化主要分为两部分:一是数据库管理员通过对系统参数的调整达到优化的目的,二是开发人员通过对应用程序的优化达到调整的目的。 在此,仅就系统参数的调整进行探讨,而不涉及应用程序的优化。对系统参数的调整,可以分为以下几个部分: (1)调整内存分配 系统全局区(SGA)是一转载 2012-06-09 22:34:10 · 406 阅读 · 0 评论 -
Oracle数据库的Hang
Oracle数据库的Hang一、数据库Hang时可能的现象 1、最直观的是你的大部分的业务操作,比如说一个查询都使用好长的时间,或根本就返回不出结果。这和简单那种锁表是有区别的。 2、在操作系统上用Hp-unix用glance、Aix用nmon及用sar做监测会出现系统空闲的假象,表面看起来系统很闲,实际上系统已经Hang了。 3、查v$session_wait会出现大量的”lat转载 2012-06-09 22:35:44 · 517 阅读 · 0 评论 -
show_space函数源码
show_space函数源码xzh2000 提供的最终混合超级完全无敌版show_space函数源码create or replace procedure show_space ( p_segname_1 in varchar2, p_space in varchar2 default 'MANUAL', p_type_1 in varchar2 default转载 2012-06-09 22:43:52 · 479 阅读 · 0 评论 -
LOB存储在单独的段上
LOB存储在单独的段上转载 2012-06-10 09:15:07 · 450 阅读 · 0 评论 -
SQL语句优化方法30例
SQL语句优化方法30例在SQL语句优化过程中,我们经常会用到hint,现总结一下在SQL优化过程中常见Oracle HINT的用法:1. /*+ALL_ROWS*/ 表明对语句块选择基于开销的优化方法,并获得最佳吞吐量,使资源消耗最小化. 例如: SELECT /*+ALL+_ROWS*/ EMP_NO,EMP_NAM,DAT_IN FROM BSEMPMS WHERE转载 2012-06-09 22:29:43 · 379 阅读 · 0 评论 -
DBMS_STATS分析表
DBMS_STATS分析表作用:DBMS_STATS.GATHER_TABLE_STATS统计表,列,索引的统计信息.DBMS_STATS.GATHER_TABLE_STATS的语法如下:DBMS_STATS.GATHER_TABLE_STATS (ownname VARCHAR2, tabname VARCHAR2, partname VARCHAR2, estimate_per转载 2012-06-09 22:38:51 · 401 阅读 · 0 评论 -
如何更快地批量数据处理?
如何更快地批量数据处理?如何更快地批量数据处理?作者 xzh2000 在批量处理数据时,比如从上亿条记录的表中删除上1000万条数据,不仅要考虑对undo的影响,还要考虑对redo,对磁盘i/o,锁、阻塞等的影响,在某种意思上讲,同样的任务,执行的sql次越少,总的消耗的时间就越少。。。 create table tmp_object1 as select转载 2012-06-09 22:44:13 · 469 阅读 · 0 评论 -
查看等待事件
查看等待事件--v$session_wait视图中的p1、p2、p3表示等待事件的具体含义,如果Wait Event是db file scattered read,那么p1=file_id/p2=block_id/p3=blocks,然后通过dba_extents即可确定出热点对象.--如果是latch free的话,那么p2为闩锁号,它指向v$latch.--求等待事件及其对转载 2012-06-09 22:50:30 · 428 阅读 · 0 评论 -
ORACLE LOB 大对象处理
LOB大对象处理: 主要是用来存储大量数据的数据库字段,最大可以存储4G字节的非结构化数据。 主要介绍字符类型和二进制文件类型LOB数据的存储,单独介绍二进制类型LOB数据的存储。 一. Oracle中的LOB数据类型分类 1,按存储数据的类型分: ①字符类型: CLOB:存储大量 单字节 字符数据。 NLOB:存储定宽 多字节 字符数据。 ②二进制类转载 2012-06-10 09:14:31 · 399 阅读 · 0 评论 -
利用rowid快速在线更新海量数据(zt)
利用rowid快速在线更新海量数据(zt)http://www.itpub.net/thread-1052077-1-2.html最近一直在折腾大表的更新问题,今天终于有了突破。兴奋之余发个帖子跟大家分享一下心得,并且讨论一下是否还可能进一步提高处理速度。问题是这样的:一张5亿条记录的表,没有分区。由于增加了一个冗余字段,需要根据另外一张表(4.8亿条)更新这个大表。下面是具体的描转载 2012-06-09 22:49:59 · 411 阅读 · 0 评论 -
收集oracle统计信息1
收集oracle统计信息优化器统计范围:表统计; --行数,块数,行平均长度;all_tables:NUM_ROWS,BLOCKS,AVG_ROW_LEN;列统计; --列中唯一值的数量(NDV),NULL值的数量,数据分布; --DBA_TAB_COLUMNS:NUM_DISTINCT,NUM_NULLS,HISTOGRAM;索引统计;--叶块数量转载 2012-06-09 21:28:16 · 351 阅读 · 0 评论 -
收集oracle统计信息2
---------------------------------------10g自动收集统计信息---------------------------------------从10g开始,Oracle在建库后就默认创建了一个名为GATHER_STATS_JOB的定时任务,用于自动收集CBO的统计信息。这个自动任务默认情况下在工作日晚上10:00-6:00和周末全天开启。调用转载 2012-06-09 21:26:30 · 393 阅读 · 0 评论 -
Shrink space合并表的碎片
Shrink space合并表的碎片一般表里有碎片我们都采用alter table table_name move tablespace_name,或者exp,drop table table_name,imp的2种方式10G给我们其他的方法.下面我来试一吧 C:\Documents and Settings\Administrator>sqlplus greatfinish/转载 2012-06-09 21:41:46 · 394 阅读 · 0 评论 -
ORACLE 执行计划分析
ORACLE 执行计划分析一、什么是执行计划An explain plan is a representation of the access path that is taken when a query is executed within Oracle.二、如何访问数据At the physical level Oracle reads blocks of data.转载 2012-06-09 22:20:47 · 467 阅读 · 0 评论 -
对Group By 语句的一次优化过程
对Group By 语句的一次优化过程对Group By语句的一次优化过程 作者:fuyuncat来源:www.HelloDBA.com 生产环境中发现一条语句很慢,拿回来一看,其实是一个简单的Group By语句:表CCMMT的数据量比较大,5M多条记录。 1、SQL> select CDE, CID 2 from CCM转载 2012-06-09 22:28:28 · 433 阅读 · 0 评论 -
用Shrink Space收缩Oracle数据段
用Shrink Space收缩Oracle数据段在oracle中可以使用alter table table_name shrink space收缩表,使用shrink有两个前提条件: 1、表必须启用row movement 2、表段所在表空间的段空间管理(segment space management)必须为auto实验如下:--建立一个segment space m转载 2012-06-09 21:31:32 · 784 阅读 · 0 评论 -
ORACLE中查看执行计划plan
ORACLE中查看执行计划plan必须声明,以下是基于oracle10g的,对8i及其更早的版本不再讨论。一:执行形式通常我们在sql*plus中就可以执行了。在形式上,如果按照输出结果方式主要有两个不同,按照执行方式也有两个不同。至于如何使用dbms_xplan包裹,不在此详述,我自己一般也不用。1)执行方式1 -- set autotrace traceonly..sq转载 2012-06-09 22:16:19 · 505 阅读 · 0 评论 -
Oracle 性能优化的基本方法概述
Oracle 性能优化的基本方法概述Oracle 性能优化的基本方法概述1)设立合理的性能优化目标。2)测量并记录当前性能。3)确定当前Oracle性能瓶颈(Oracle等待什么、哪些SQL语句是该等待事件的成分)。4)把等待事件记入跟踪文件。5)确定当前的OS瓶颈。6)优化所需的成分(应用程序、数据库、I/O、争用、OS等)。7)跟踪并实施更改控制过程。8)测转载 2012-06-09 22:22:38 · 367 阅读 · 0 评论 -
Oracle调优笔记
Oracle调优笔记1.内存调优注:SGA中的shared pool中,系统自动优先缓存datadictionary cache,对系统性能影响较大的是library cache。1.1 library cache 调优(v$librarycache/v$sql/v$sqlarea/v$sqltext/v$db_object_cache)判断:要不要调整library cach转载 2012-06-09 22:34:48 · 406 阅读 · 0 评论 -
dbms_stats.gather_table_stats和analyze table的一点细小差别
dbms_stats.gather_table_stats和analyze table的一点细小差别 SQL> select * from v$version;BANNER----------------------------------------------------------------Oracle9i Enterprise Edition转载 2012-06-09 22:37:47 · 615 阅读 · 0 评论 -
Oracle 统计信息备份/表分析
Oracle 统计信息备份/表分析众所周知,统计信息直接影响到Oracle优化器最后的执行计划,所以定期收集统计信息成为DBA一项常规的工作,但是,对于一些大表,比如数据量超过几千万条,表分析后却有可能会导致应用系统一些SQL执行计划变差,比如出现大量的全表扫,严重影响数据库性能.如果出现这种情况,一种方法是对找一张该查询涉及到的小表,执行grant select on table_n转载 2012-06-09 22:39:39 · 620 阅读 · 0 评论 -
Oracle11g连接池信息的修改
最近项目中用到的Oracle数据库在服务器上是建了多个表空间供不同系统使用,两个系统同时在使用过程中,正在开发的一个项目在测试运行时,时不时就出现连接池满了,连接不上的问题,为此查了下怎么修改Oracle连接池配置的修改方式,特记录下来备查。目前Oracle只支持一个连接池,pool name为“SYS_DEFAULT_CONNECTION_POOL”,管理连接池信息的也就一个包“DB转载 2012-06-14 22:04:59 · 1928 阅读 · 0 评论