易截截图软件、单文件、免安装、纯绿色、仅160KB

oracle重建索引

郑重说明:此文来自于网络,如有侵权请告之!
导读:
  重建索引有多种方式,如drop and re-create、rebuild、rebuild online等。下面简单比较这几种方式异同以及优缺点:
  首先建立测试表及数据:
  SQL> CREATE TABLE TEST AS SELECT CITYCODE C1 from CITIZENINFO2;
  Table created
  SQL> ALTER TABLE TEST MODIFY C1 NOT NULL;
  Table altered
  SQL> SELECT COUNT(1) from TEST;
  COUNT(1)
  ----------
  16000000
  一、drop and re-create和rebuild
  首先看看正常建立索引时,对表的加锁情况。
  suk@ORACLE9I> @show_sid
  SID
  ----------
  14
  suk@ORACLE9I> CREATE INDEX IDX_TEST_C1 ON TEST(C1);
  索引已创建。
  SQL> SELECT OBJECT_NAME,LMODE from V$LOCK L,DBA_OBJECTS O WHERE O.OBJECT_ID=L.ID1 AND L.TYPE='TM' AND SID=14;
  OBJECT_NAME LMODE
  ------------------------------ ----------
  OBJ$ 3
  TEST 4
  可见,普通情况下建立索引时,oracle会对基表加share锁,由于share锁和 row-X是不兼容的,也就是说,在建立索引期间,无法对基表进行DML操作。
  对于删除重建索引的方法就不介绍了,它与上面的描述是一样的,下面我们看看用rebuild的方式建立索引有什么特别。
  suk@ORACLE9I> ALTER INDEX IDX_TEST_C1 REBUILD;
  索引已更改。
  另开一个会话,查询此时test的加锁情况:
  SQL> SELECT OBJECT_NAME,LMODE from V$LOCK L,DBA_OBJECTS O WHERE O.OBJECT_ID=L.ID1 AND L.TYPE='TM' AND SID=14;
  OBJECT_NAME LMODE
  ------------------------------ ----------
  TEST 4
  可见,rebuild的方式对基表的加锁方式与CREATE时是一样的。
  另开一个会话,在索引正在rebuild时,执行如下SQL:
  suk@ORACLE9I> SET AUTOTRACE TRACE
  suk@ORACLE9I> SELECT /*+ INDEX(TEST) */ COUNT(1) from TEST WHERE ROWNUM<10;
  执行计划
  ----------------------------------------------------------
  0 SELECT STATEMENT ptimizer=CHOOSE (Cost=26 Card=1)
  1 0 SORT (AGGREGATE)
  2 1 COUNT (STOPKEY)
  3 2 INDEX (FULL SCAN) OF 'IDX_TEST_C1' (NON-UNIQUE) (Cost=
  26 Card=1986621)
  可以看到索引在重建时,查询仍然可以使用


相关文档:

oracle数据库

关键字: oracle数据库
Oracle数据库命令集
1、sqlplus启动方式:
Dos下运行sqlplus 用户名/密码  as sysdba
例如:c:>sqlplus sys/password AS sydba(系统帐户)
或者:c:>sqlplus scott/password
2、用户连接(切换)操作:
sql>conn Scott/password(默认为tiger)
注:conn与connect使用方法一 ......

ORACLE:主键索引更换表空间

        在 Oracle 中,对于已经建好的主键,是自动创建索引的,并且索引是创建到当前的表空间中的,如果要将索引更换到其它表空间,可以使用如下的方法,超简单:
   alter index index_aaa rebuild tablespace newtablespace;
newtablespace 是新指定的表空间。 ......

Red Hat Cluster Suite集群 Oracle数据库


目录
一、概述
二、硬件平台搭建
三、Redhat As4 update2安装配置
四、Oracle 10g安装配置
五、Red Hat Cluster Suite安装配置
六、系统切换测试
七、常用命令
一、概述
黄岛市开发区财政局本次采用两台IBM X3850-8664服务
器、
一台DS4300盘阵,平台采用Redhat As4 update2 结合cluster suite,部署Oracle ......

主流数据库MYSQL/MSSQL/ORACLE测试数据库脚本代码


/******************************************************************************/
/*
主流数据库MYSQL/MSSQL/ORACLE测试数据库脚本代码
脚本任务:建立4个表,添加主键,外键,插入数据,建立视图
运行环境1:microsoft sqlserver 2000 查询分析器
运行环境2:mysql5.0 phpMyAdmin网页界面
运行环境3:oracle 9i SQL*P ......

oracle启动分析

oracle启动方式与命令参数汇总
本文主要是对oracle的启动方式和相关的命令参数进行一个汇总,用以加深印象。
Oracle的启动方式:
startup nomount
startup mount
startup open (startup的默认选项)
其他常用的参数:read only ,read write ,force,restrict
这些参数可以一起使用,比如 startup 与 startup open read ......
© 2009 ej38.com All Rights Reserved. 关于E健网联系我们 | 站点地图 | 赣ICP备09004571号