E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
oracle索引
Oracle索引
技术之如何建立最佳索引
怎样建立最佳索引?1、明确地创建索引createindexindex_nameontable_name(field_name)tablespacetablespace_namepctfree5initrans2maxtrans255storage(minextents1maxextents16382pctincrease0);2、创建基于函数的索引常用与UPPER、LOWER、TO_CHAR(da
哈全文
·
2013-07-15 14:00
oracle
索引
oracle 索引的一些整理
oracle索引
失效原因及解决方法该部分内容摘自:http://hi.baidu.com/8kevinlj/item/f1fe2bc63cf16c51ad00ef49一、以下的方法会引起索引失效1,,
WeirdBird
·
2013-07-11 13:00
oracle
索引
索引失效
深入理解
Oracle索引
(25):一招鲜、吃遍天之单字段索引创建思路
本文较短、不过实用性很好、还是记录之、 ㈠先别看SQL语句、看执行计划、挑出走全表扫的表 ㈡回头看SQL语句、分析上述表的约束字段有哪些、检查各个约束字段的索引是否存在 ㈢选择可选性最高的约束字段建立索引ByDavidLin2013-07-01GoodLuck
linwaterbin
·
2013-07-01 15:00
深入理解
Oracle索引
(24):B*Tree 索引小结
这个索引专题N久未见阳光了、偶觉得特过去、不幸福、于是有了本文 坊间传闻、B*Tree索引在应用开发阶段、常作"炮灰"状、而在维护时期、则是"马后炮" 即便身世坎坷常被冷眼相待、但到底是B*Tree、魅力无限、全身散发着令人YY的韵味、你比如: 如果存在主键或者唯一性约束、则不论是访问1w行、还是1亿行、这个CPU或IO的开销都相去无几呀 哇、、、美丽可爱大方如B*Tr
linwaterbin
·
2013-06-28 22:00
快速熟悉
Oracle索引
一、索引1.1什么是索引?一种用于提升查询效率的数据库对象;通过快速定位数据的方法,减少磁盘的输入输出操作;索引信息与表独立存放;Oracle数据库自动使用和维护索引。1.2索引分类唯一性索引非唯一性索引1.3创建索引的两种方式自动创建---在定义主键或唯一键约束时系统会自动在相应的字段上创建唯一性索引.手动创建----用户可以在其他列上创建非唯一的索引,以加速查询. select*fromus
yulei_qq
·
2013-06-28 16:00
oracle
索引
深入理解
Oracle索引
(23):6 种常见不走索引的原因分析
有时候、挺郁闷的、丫的、咋回事啊、就不走索引、 如果、你发现不走索引、却莫冒失强加自己的意志、 总得给出理由吧、做个测试先、证实/伪走索引切实明智 否则、可能会返回错误的结果、也可能导致性能下降 下面就常见不走索引的6种原因简要分析一下、做到心里有底 ㈠违背复合索引"前缀性"原理 谓词没有使用索引前导列 ㈡隐
linwaterbin
·
2013-06-11 22:00
深入理解
Oracle索引
(22):索引和NULL 协同合作互惠共赢
㈠合作的基础⑴/*全为NULL的列是无法存储到B*Tree里面的*/ hr@ORCL>createtablet(xnumber,ynumber); hr@ORCL>createindexidx_tont(x,y); hr@ORCL>insertintotvalues(1,1); hr@ORCL>insertintotvalues(1,null); hr@ORCL>insertintotva
linwaterbin
·
2013-06-10 01:00
Oracle 索引监控(monitor index)
Oracle索引
监控(monitorindex)合理的为数据库表上创建战略性索引,可以极大程度的提高了查询性能。
qileilove
·
2013-06-08 12:00
深入理解
Oracle索引
(21):视图和小表是否应该加索引
㈠视图能使用索引吗 答案是不能、为什么呢? 我们先要知道什么是视图? 视图、本质上讲、就只是一条被存储的SQL语句而已 那有人就要问了、为什么物化视图可以哩? 这个.....这个、这根本就是两码事嘛、两个完全不同的概念 物化视图、本质上而言、是一张表、有数据 所以、只要基表索引使用得当、便是对视图的最大安慰和馈赠hr@ORCL>creat
linwaterbin
·
2013-06-07 12:00
深入理解
Oracle索引
(20):外键是否应该加索引
先表明我的立场、我是绝对支持外键一定要加索引! 虽然在高版本的Oracle里、对这个要求有所降低、但依然有如下原因: ①死锁 外键未加索引是导致死锁的最主要原因、因为 无论更新父表主键、或者删除一个父表记录、都会在子表加一个表锁 这就会不必要的锁定更多的行、从而影响并发性 ②ONDELETECASCADE 对于删除
linwaterbin
·
2013-06-07 10:00
深入理解
Oracle索引
(19):表被 delete 后、索引叶子块里 entry 条目的状态
先瞧一个大家习以为常的现象:hr@ORCL>droptabletpurge; Tabledropped. hr@ORCL>createtablet(xnumber,yvarchar2(30)); Tablecreated. hr@ORCL>insertintotselectrownum,rownum||'a'fromdualconnectbyrownumcreateindexidx_t
linwaterbin
·
2013-06-06 23:00
深入理解
Oracle索引
(18):函数索引的陷阱以及如何避免索引被污染
㈠函数索引的陷阱 使用函数索引一定要注意在函数代码变更后重建函数索引、否则、Oracle将返回错误结果但不给提示 测试如下:hr@ORCL>droptabletpurge; Tabledropped. hr@ORCL>createtablet(xnumber,yvarchar2(30)); Tablecreated. hr@ORCL>insertintotse
linwaterbin
·
2013-06-06 18:00
oracle索引
使用及索引失效总结
1、在索引列上使用函数。如SUBSTR,DECODE,INSTR等,对索引列进行运算.需要建立函数索引就可以解决了。2、新建的表还没来得及生成统计信息,分析一下就好了3、基于cost的成本分析,访问的表过小,使用全表扫描的消耗小于使用索引。4、使用、<。6、like"%_"百分号在前。7、单独引用复合索引里非第一位置的索引列。8、字符型字段为数字时在where条件里不添加引号。9、当变量采用的是t
li_dongliang
·
2013-06-05 17:16
oracle
深入理解
Oracle索引
(17):Cost 值相同 CBO 对索引的选择
规则如下: 测试如下:hr@ORCL>droptabletpurge; Tabledropped. hr@ORCL>createtabletasselect*fromdba_objects; Tablecreated. hr@ORCL>altertabletadd(object_id_1number); Tablealtered. hr@ORCL>upd
linwaterbin
·
2013-06-05 16:00
深入理解
Oracle索引
(16):聚簇因子
它的定义: 根据索引的值指示表中行的有序程度、通知CBO关于表的行和索引的同步情况 ●该值与块数相近、表示相同的数据存放得比较集中 ●该值与行数相近、表示表中行的顺序与索引的顺序不同 它的作用: ●表相对于索引的有序程度 ●通过索引读取整个表时对表执行的逻辑I/O次数 它的查询:h
linwaterbin
·
2013-06-04 21:00
索引
深入理解
Oracle索引
(15):日期转换函数的格式参数大小写规则对函数索引的影响
规则如下: 依据这个规则、只有3种输出:大写、小写、首字母大写 测试如下:sys@ORCL>selectto_char(sysdate,'Month')fromdual; TO_CHAR(SYSDATE,'MONTH') ------------------------------------ June sys@ORCL>selectto_char(
linwaterbin
·
2013-06-02 21:00
oracle
index
Oracle索引
(B*tree与Bitmap)的学习总结
在Oracle中,索引基本分为以下几种:B*Tree索引,反向索引,降序索引,位图索引,函数索引,interMedia全文索引等,其中最常用的是B*Tree索引和Bitmap索引。(1)、与索引相关视图查询DBA_INDEXES视图可得到表中所有索引的列表;访问USER_IND_COLUMNS视图可得到一个给定表中被索引的特定列。(2)、组合索引概念当某个索引包含有多个已索引的列时,称这个索引为组
·
2013-05-31 09:18
深入理解
Oracle索引
(14):Composite Index 两大原理解析
声明:虽然题目是Oracle、但同样适合MySQLInnoDB索引 在大多数情况下、复合索引比单字段索引好 很多系统就是靠新建一些合适的复合索引、使效率大幅度提高 复合索引比单字段索引复杂、有两个原则需把握:前缀性和可选性 但是、可叹的是、国内很多IT系统开发人员没有意识到应该优先设计复合索引 更没有充分理解复合索引的前缀性和可选性这两个重要原则 ㈠前缀性
linwaterbin
·
2013-05-21 12:00
浅析索引组织表那点事
Oracle索引
组织表中逻辑ROWID的物理猜是如何实现的,而这次看的时候很自然的就想明白其中的实现。
bluegiant
·
2013-05-16 22:15
oracle
索引组织表
深入理解
Oracle索引
(13):位图连接索引基础介绍
和BitmapIndex建立在单个table上不同、BitmapJoinIndex是基于多表连接的 较普遍的用法是事实表的外键列和相关的维度表的主键列的连接操作 或许有朋友对啥是事实表和维度表有点迷糊哈、这里简单谈谈Rocky的观点: 首先、我认为、这俩是数据仓库的东东 其次呢、 ●事实表:你要关注的内容、比如高考状元 ●维度表:你通过什么来关注、比如按地区、那么是福建的?北京
linwaterbin
·
2013-05-08 22:00
JOIN
bitmap
index
oracle索引
技术——天天笔记(2)
函数索引SELECT* FROMDEMOT WHEREF7='F';SELECT* FROMDEMOT WHERELOWER(F7)='f';F7上本来是有位图索引的,但是使用了LOWER函数后,就进行了全表扫面。下面我们来创建F7列上的函数索引LOWERCREATEINDEXFUN_INDEX ONDEMOT(LOWER(F7)); 5seconds再看执行计划,发生
chiweitree
·
2013-05-07 13:00
oracle索引
技术——天天笔记(1)
数据库的索引把用户感兴趣的列值连同其行标识符(ROWID)存储在一起ROWID包含了存储列值的表行在磁盘上的物理位置索引虽然能提高查询的性能,但是也不能一度的创建索引,因为索引是有代价的消耗磁盘空间,系统资源,在列值被修改的同时也必须修改相应的索引 Oracle默认的索引类型是B树索引,适用于高基数列,也就是列值种类多。SELECTDBMS_ROWID.ROWID_RELATIVE_FNO(ROW
chiweitree
·
2013-05-07 13:00
oracle教程之怎么样分析oracle表或
oracle索引
在CREATEINDEX和ALTERINDEXREBUILD时可以指定COMPUTESTATISTICS语句,对于非分区表重建索引时会收集表、列和索引的统计信息。对于分区表,只收集索引信息,不会收集表和列信息。可以在将METHOD_OPT参数设置为“FORALLHIDDENCOLUMNSSIZEN”来收集函数索引的索引表达式信息。1、Oracle根据下列条件来决定使用哪些索引:索引中的记录数;索引
Oracle小混子
·
2013-04-28 09:14
oracle
oracle索引
Oracle表
Oracle 分区表及
Oracle索引
(一)
ORACLE对于分区表方式其实就是将表分段存储,一般普通表格是一个段存储,而分区表会分成多个段,所以查找数据过程都是先定位根据查询条件定位分区范围,即数据在那个分区或那几个内部,然后在分区内部去查找数据,一个分区一般保证四十多万条数据就比较正常了,但是分区表并非乱建立,而其维护性也相对较为复杂一点,而索引的创建也是有点讲究的,这些以下尽量阐述详细即可。 1、类型说明:range分区方式,也算是最常
Oracle小混子
·
2013-04-27 16:16
oracle
oracle
Oracle分区表
分区表索引
Oracle 分区表及
Oracle索引
(二)
3、维护操作:(1)删除分区 ALTERTABLETABLE_PARTITIONDROPPARTITIONTAB_PARTOTION_03; 如果是全局索引,因为全局索引的分区结构和表可以不一致,若不一致的情况下,会导致整个全局索引失效,在删除分区的时候,语句修改为: ALTERTABLETABLE_PARTITIONDROPPARTITIONTAB_PARTOTION_03UPDATE
Oracle小混子
·
2013-04-27 16:56
oracle
oracle
Oracle分区表
分区表索引
oracle索引
整理
转:http://liusuper.iteye.com/blog/219013,注意:以下内容都没经过自己验证 一, oracle的索引陷阱一个表中有几百万条数据,对某个字段加了索引,但是查询时性能并没有什么提高,这主要可能是oracle的索引限制造成的。 oracle的索引有一些索引限制,在这些索引限制发生的情况下,即使已经加了索引,oracle还是会执行一次全表扫
breezylee
·
2013-04-21 12:00
oracle
oracle索引
整理
转:http://liusuper.iteye.com/blog/219013,注意:以下内容都没经过自己验证 一, oracle的索引陷阱一个表中有几百万条数据,对某个字段加了索引,但是查询时性能并没有什么提高,这主要可能是oracle的索引限制造成的。 oracle的索引有一些索引限制,在这些索引限制发生的情况下,即使已经加了索引,oracle还是会执行一次全表扫
breezylee
·
2013-04-21 12:00
oracle
统计、案例-深入理解
Oracle索引
(10):索引列字符类型统计信息的32位限制-by小雨
上班之余抽点时间出来写写博文,希望对新接触的朋友有帮助。今天在这里和大家一起学习一下统计、案例- ㈠先看两个来自产生境环的实在案例: 案例1 案例2 ㈡道理: Oracle在对于varchar等字符型字段集收统计信息时,其实不会对每一个值都停止确精的统计 而是,对值停止substr(,32)
·
2013-04-18 16:00
oracle
深入理解
Oracle索引
(10):索引列字符类型统计信息的32位限制
㈠先看两个来自生产环境的真实案例: 案例1 案例2 ㈡原理: Oracle在对于varchar等字符型字段收集统计信息时,并不会对每个值都进行精确的统计 而是,对值进行substr(,32)。一般来讲,这种方式没有什么问题 但是,如果恰巧列中存储的数据,前32bytes相同,那么,Oracle的统计就会与实际情况不符 ㈢测试:hr
linwaterbin
·
2013-04-17 15:00
index
histograms
统
深入理解
Oracle索引
(9):不要过分依赖 HINT
很多应用开发人员、特别是技术大拿、喜欢通过HINT强制OracleCBO按自己的意志选择执行计划 Rocky窃以为、这种策略在某种程度上其实是把双刃剑 使用Hint指定Index的时候需要慎重、如果不合适或者无效、可能画蛇添足、效率更低 摘自官方文档:IftheINDEXhintspecifiesnoindexes,thentheoptimizerconsidersthecostof
linwaterbin
·
2013-04-16 10:00
oracle
hint
深入理解
Oracle索引
(8):如何进行索引监控分析和优化
在生产环境、我们会发现: ①索引表空间I/O非常高 ②"dbfilesequentialread"等待事件也比较高 这种迹象表明、整个数据库系统、索引的读写操作比较多、已经成为系统的主要瓶颈 一般的原因、大抵如下: ①大量SQL均采用索引 ②DML操作导致索引维护工作量暴增 ③频繁DML导致很多索引碎片、增加I/O开销 ④索引建立策略失误、走索引如同全表扫 如果、
linwaterbin
·
2013-04-15 17:00
oracle
优化
index
Oracle教程之分析
Oracle索引
扫描四大类
学习Oracle时,你可能会遇到
Oracle索引
扫描问题,这里将介绍
Oracle索引
扫描问题的解决方法,在这里拿出来和大家分享一下。
Oracle小混子
·
2013-04-07 11:00
oracle
oracle索引
索引扫描
Oracle教程之Oracle管理索引(五)--
Oracle索引
的维护
一、查看系统表中的用户索引在Oracle中,SYSTEM表是安装数据库时自动建立的,它包含数据库的全部数据字典,存储过程、包、函数和触发器的定义以及系统回滚段。一般来说,应该尽量避免在SYSTEM表中存储非SYSTEM用户的对象。因为这样会带来数据库维护和管理的很多问题。一旦SYSTEM表损坏了,只能重新生成数据库。我们可以用下面的语句来检查在SYSTEM表内有没有其他用户的索引存在。/*Form
Oracle小混子
·
2013-04-07 11:12
Oracle教程
oracle索引
Oracle索引信息
Oracle管理索引
Oracle索引的维护
oracle索引
详解
一.索引介绍 1.1 索引的创建语法: CREATE UNIUQE | BITMAP INDEX . ON . ( | ASC | DESC, | ASC | DESC,...) TABLESPACE STORAGE LOGGING | NOLOGGING COMPUTE STATISTICS NO
jeffsui
·
2013-04-03 13:00
oracle
索引
Oracle教程之管理索引(二)--
Oracle索引
基本概念
1、索引的概念索引是用于加速数据存取的数据库对象。合理地使用索引可以大大降低I/O次数。2、索引的功能:对记录进行排序,加快表的查询速度。3、索引的分类:(1)单列索引和复合索引单列索引是基于单个列所建立的索引;复合索引时基于两列或多列所建立的索引。SQL>CREATE INDEX emp_idx1 on emp(ename,job);SQL>CREATE INDEX emp_i
Oracle小混子
·
2013-04-03 09:01
oracle
oracle索引
Oracle管理索引
Oracle索引信息
Oracle索引基本概念
Oracle教程之管理索引(五)--
Oracle索引
的维护
一、查看系统表中的用户索引在Oracle中,SYSTEM表是安装数据库时自动建立的,它包含数据库的全部数据字典,存储过程、包、函数和触发器的定义以及系统回滚段。一般来说,应该尽量避免在SYSTEM表中存储非SYSTEM用户的对象。因为这样会带来数据库维护和管理的很多问题。一旦SYSTEM表损坏了,只能重新生成数据库。我们可以用下面的语句来检查在SYSTEM表内有没有其他用户的索引存在。/*Form
Oracle小混子
·
2013-04-03 09:11
oracle
oracle索引
Oracle索引维护
Oracle索引信息
Oracle管理索引
Oracle 索引监控(monitor index)
本文描述如何使用
Oracle索引
的监控。 1、冗余索引的弊端 大量冗余和无用的索引导致整个数据库性能低下,耗用了大量的CPU与I/O开销,具体
robinson_0612
·
2013-03-21 09:00
oracle
database
Oracle索引
--转载结论:使用索引,可以大大降低访问I/O的次数,从而可以提高SQL语句的查询性能。一旦创建了索引,Oracle会自动维护和使用它们。如果我们更改了表中的数据Oracle也会自动更新索引数据。索引虽然对查询是有帮助的,但我们要对具体的列进行分析,从而创建不同类型的索引。不恰当的索引,很有可能会适得其反。下面列出的这些情况,应该考虑使用索引:1、大表2、主键列(Oracle自动产生索引)3、唯一
lbb123
·
2013-03-19 14:00
oracle
Oracle索引
管理
基础知识:createtabletest01( ennonumber(3), ennamevarchar(20), sex varchar(2), age number(3))1、创建索引 语法:createindex索引名称on表名称(列名称1,列名称2,.......)tablespace表空间名称; 例子:createindex ind_ennoontest01(enno)ta
suzhou2007
·
2013-02-28 14:00
oracle
索引
管理
构建Oracle ROWID
ROWID是伪列,是内部算法计算出来的,
Oracle索引
可以使用它。
easyrise
·
2013-02-27 21:01
oracle
Oracle教程之分析
Oracle索引
扫描四大类
学习Oracle时,你可能会遇到
Oracle索引
扫描问题,这里将介绍
Oracle索引
扫描问题的解决方法,在这里拿出来和大家分享一下。
Oracle小混子
·
2013-02-26 09:42
oracle
oracle索引
Oracle索引扫描
面试啊
2.
oracle索引
有些哪些类型? 3.sql里 in 和exsit的区别? 4.sql中having的作用? 5.oracle分区表作用?
jssanshengshi
·
2013-02-25 14:00
工作
面试
深入理解
Oracle索引
(7):用实验数据观察从B-tree索引→复合索引→Bitmap索引所消费的CPU和I/O
环境:sys@ORCL>!sqlplus-vSQL*Plus:Release10.2.0.1.0-Productionsys@ORCL>!uname-aLinuxThink2.6.18-308.el5xen#1SMPFriJan2717:59:00EST2012i686i686i386GNU/Linuxhr@ORCL>connsh/sh Connected. sh@ORCL>selectindex
linwaterbin
·
2013-02-24 21:00
深入理解
Oracle索引
(6):在实践中初步认识3大索引的使用场景
㈠某表的一列重复值很多,基数很小时,应该建立什么索引? --创建BitmapIndex,具体原理参见:B-Tree索引与Bitmap索引的锁代价的比较 例如: createbitmapindexidx_bm_productonproducts(list_price)tablespaceusers; ㈡某表的一列的数值一直在增大,不是随机
linwaterbin
·
2013-02-24 20:00
深入理解
Oracle索引
(5):反向索引的定义、缺点和适用场景
㈠定义 建立一个反向索引将把每个列的键值(eachcolumnkeyvalue)按字节反向过来,对于组合键,列的顺序被保留,但每个列的字节都作了反向 例如: 表的某一列内容 …… 1234 1235 1236 1237 …… 建立正向索引 …… 1234 1235
linwaterbin
·
2013-02-24 19:00
Oracle索引
——索引类型
Oracle 提供了多种不同类型的索引以供使用。简单地说, Oracle 中包括如下索引: B* 树索引 这些是我所说的 “ 传统 “ 索引。到目前为止,这是 Oracle 和大多数其他数据库中最常用的索引。 B* 树的构造类似
lee_govern
·
2013-02-22 15:00
oracle
深入理解
Oracle索引
(4):optimizer_index_cost_adj详解
如果哪天你遇到特殊的情况,比如系统数据字典的索引坏了,但是你去没有办法去修改这个索引,因为有些系统内部的东西你是动不了的你就会说“我要是能绕过这个索引,全部走全表扫描,把库里的数据全部导出来该多好啊”那么,这个时候,optimizer_index_cost_adj就很有用了该参数表示全表扫描和索引扫描的百分比,取值范围∈[1,10000],缺省为100告诉优化器:走索引和走全表扫描的代价的比值是多
linwaterbin
·
2013-02-05 01:41
Oracle
基础管理
Oracle
Tuning
深入理解
Oracle索引
(4):optimizer_index_cost_adj详解
如果哪天你遇到特殊的情况,比如系统数据字典的索引坏了,但是你去没有办法去修改这个索引,因为有些系统内部的东西你是动不了的 你就会说“我要是能绕过这个索引,全部走全表扫描,把库里的数据全部导出来该多好啊” 那么,这个时候,optimizer_index_cost_adj就很有用了 该参数表示全表扫描和索引扫描的百分比,取值范围∈[1,10000
linwaterbin
·
2013-02-05 01:00
深入理解
Oracle索引
(3):唯一索引和ROWID
索引都会包含rowid来定位到具体的位置,但是唯一索引不会用rowid来作为“索引键”的一部分 比如在列col1上建立非唯一索引,则其索引键是col1|rowid,这样索引键就唯一了,但唯一索引不会在列上加上rowid构成索引键 测试:SQL>conn/assysdba 已连接。 SQL>createtabletasselect*fromdba_objects; 表已
linwaterbin
·
2013-02-03 00:00
深入理解
Oracle索引
(2):INDEX UNIQUE SCAN,INDEX FULL SCAN和INDEX FAST FULL SCAN
㈠INDEXUNIQUESCAN 如果表上有唯一索引,搜索索引列时会用上INDEXUNIQUESCAN 原来IndexUniqueScan和IndexRangeScan在BTree上的搜索路径是一样的 只是IndexUniqueScan在找到应该含有要找的IndexKey的block后便停止了搜索,因为该键是唯一的 而IndexRangeScan还要
linwaterbin
·
2013-01-30 22:00
上一页
4
5
6
7
8
9
10
11
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他