ORACLE重建索引详解
一、重建索引的前提1、表上频繁发生update,delete操作;2、表上发生了alter table ..move操作(move操作导致了rowid变化)。二、重建索引的标准1、索引重建是否有必要,一般看索引是否倾斜的严重,是否浪费了空间, 那应该如何才可以判断索引是否倾斜的严重,是否浪费了空间, 对索引进行结构分析(如下):SQL>Ana...
OracleAWR删除历史快照说明
一. AWR 概述之前整理过一篇AWR 的说明的文档:Oracle AWR(Automatic Workload Repository) 说明http://blog.csdn.net/tianlesoftware/article/details/4682300从Oracle 10g 开始,Oracle 推出一个工具:AWR(Automatic Workload Repository),并建议用AWR 代替9i 的Statspack。AWR 实质上是一个...
B+树索引
1.索引结构 1.1 B+树索引结构 从物理上说,索引通常可以分为:分区和非分区索引、常规B树索引、位图(bitmap)索引、翻转(reverse)索引等。其中,B树索引属于最常见的索引 B树索引是一个...
Oracle 索引的分类,分析与比较....(转载)
逻辑上:Single column 单行索引Concatenated 多行索引Unique 唯一索引NonUnique 非唯一索引Function-based函数索引Domain 域索引物理上:Partitioned 分区索引NonPartitioned 非分区索引B-tree:Normal 正常型B树Rever Key 反转型B树 Bitmap 位图索引索引结构:B-tree:适合与大量的增、删、改(OLT...
Streams AQ: qmn coordinator waiting for slave to start等待事件
导致这个问题的主要原因是初始化参数AQ_TM_PROCESSES设置为0,而Oracle推荐改参数应该至少设置为1。由于Oracle的高级队列、流、数据泵等多种内置功能都会依赖于QMN进程,当AQ_TM_PROCESSES不为0时,Oracle无法自动根据负载确定QNNN进程的数量,来满足队列相关操作的需求。而如果该参数被禁止,Oracle只能在出现队列需求的...
关于Freelists和Freelist Groups的研究【转】
一. 什么是freelists本文在于探讨Freelists和Freelist Groups的作用,存取机制,争用诊断和优化方法,同时通过理论和测试来推翻一些存在了很久的错误观点。本文的读者应该具有较深入的Oracle知识,对于一般的开发人员这篇文章可能并没有太多的帮助。我们知道Oracle数...
Awr报告中的IO压力解读
前言:IO也是衡量数据库的运行的另外一个重要参数,本文档从awr报告中去解读IO; 1、Load Profile,信息量太大了Redo size 单位bytes,redo size可以用来估量update/insert/delete的频率,大的redo size往往对lgwr写日志,和arch归档造成I/O压力,Per Transaction可以用来分辨是大量小事务,...
Oracle move table分析
在move操作的时候,进行的是block之间的数据copy,所以table所位于的block的区域会发生变化;所有行物理存储的顺序不会发生变化,但行号会变成按AAA增1的顺子,所以block里行会挪紧,实现了消除HWM和行碎片(包括行迁移问题),但不会释放申请的空间(其他segment不能使用此部分的空闲空间,只能本segment增加数据时使用...
oracle表空间使用率统计查询
参考文献文献1:http://blog.itpub.net/24104518/viewspace-730682,字符有格式,需要清理一下文献2:http://www.cnblogs.com/fengyun627/archive/2009/07/27/1532551.html文献3:http://blog.csdn.net/hproc/article/details/7372265sql语句格式化:http://web.chacuo.net/formatsql背景今天发...
Oracle的Move操作
move一个表到另外一个表空间时,索引不会跟着一起move,而且会失效。(LOB类型例外) 表move,我们分为:*普通表move*分区表move*LONG,LOB大字段类型move来进行测试和说明。 索引的move,我们通过rebuild来实现一:move普通表、索引基本语法:alter table tab_name move t...
alter table move 和 alter table shrink space的区别
move 和shrink 的共同点1、收缩段2、消除部分行迁移3、消除空间碎片4、使数据更紧密shrink语法: alter table TABLE_NAME shrink space [compact|cascate]segment shrink执行的两个阶段:1、数据重组(compact):通过一系列insert、delete操作,将数据尽量排列在段的前面。在这个过程中需要在表上...
oracle11g表的高水位线hwm与dbms_space系列一
背景 了解表段的高水位线与不同状态数据块的关系,以及高水位线一些相关概念;且熟悉哪些字典或包及过程与此相关。 结论1,oradebug形成的TRC文件中的HWM我没有研究明白,这块比较深,还需梳理思路再战2,表的高水位线采用dbms_space.unsed_space获取3,表的高水位线=total blocks - total unused blo...
查询表的高水位,并手动降低表的高水位以释放表占用的空间
---很多时候,当表进行了频繁的操作以后,特别是当表中的大量数据被delete掉以后,表的高水位并不会降低,表空间自然也下不来,有的时候我们可能需要手工的去处理以释放表空间,这样也有助于提高性能。下面通过一个例子来说明:[@more@]SQL> create table tyy as select * from dba_objects;Table created....
【AWR】该怎样清理SYSAUX表空间相关数据(第二季)
在上一篇文章中查看表空间信息是,还剩余1662M,今天我再次查看SQL> set pagesize 9999SQL> set linesize 132SQL> col TABLESPACE_NAME for a25SQL> select 2 f.tablespace_name, &n...
Oracle日常性能查看
判断回滚段竞争的SQL语句:(当Ratio大于2时存在回滚段竞争,需要增加更多的回滚段)select rn.name, rs.GETS, rs.WAITS, (rs.WAITS / rs.GETS) * 100 ratiofrom v$rollstat rs, v$rollname rnwhere rs.USN = rn.usn 判断恢复日志竞争的SQL语句:(immediate_contention或wait_contention的值大于1时存...
gc buffer busy acquire and gc buffer busy release
gc buffer busy acquire and gc buffer busy releaseThe gc buffer busy acquire and gc buffer busy release wait events specify the time the remote instance locally spends accessing the requested data block. In Oracle 11g you will see gc buffer busy acquire wait ...
修改oracleasm的listdisks和querydisk命令显示格式
一、环境 OS: [root@yitai ~]# lsb_release --allLSB Version: :core-3.0-ia32:core-3.0-noarch:graphics-3.0-ia32:graphics-3.0-noarchDistributor ID: RedHatEnterpriseASDescripti...
Oracle下 LOG FILE SYNC的概述
很大的一段时间都在调优日志写,提升系统的TPS,在这方面也积累了一些理论知识和实践经验,之前零零散散在微博上也发了很多关于log file sync的帖子,篇幅都很短,有些是自己优化系统过程中的一个心得,有些是看书过程中的一点感悟,这次把他们汇集起来,变得也更有可读性一些,作为自己的一个总结,也希望里面的内容也...
LOG FILE SYNCS等待事件
本文主要讨论 RAC 数据库中的'log file sync' 等待事件。RAC 数据库中的'log file sync' 等待事件要比单机数据库中的'log file sync' 等待事件复杂,主要原因是由于RAC 数据库需要将SCN同步到所有实例。首先,回顾一下单机数据库中的'log file sync' 等待事件,当user session 提交(commit)时,user session会通知LGW...
log file sync致数据库性能摇摆
数据库在某些时间点突然出现性能峰值,使得前端应用程序有停滞感。分析出为log file sync 事件突然发生导致了该问题。该事件是表示用户在LWGR 进程将redo 日志信息写入的redo logfile 。在普通的数据库配置中,能优化这个问题的方法只能减低日志写入量,提升日志写入速度,就是将redo lo...