Welcome 微信登录

首页 / 数据库 / MySQL / Oracle本地分区索引的使用小结

为了提高数据访问的效率,常常建立索引,但是每次重建索引在数据量很大的时候会明显变慢,影响了处理效率,因此对于大量的数据,常常使用分区和分区索引相结合的办法,这样历史分区索引不用重建,只用对新分区进行索引进行处理就行了,中间测试Oracle本地分区索引的过程记录如下,供参考1.建立分区表create tabletmp_partition_list (report_datevarchar(10),user_cntnumber(10))partition bylist(report_date)(partition p_20110816 values ("20110816") ,partitionp_20110817 values ("20110817") ,partitionp_default values (default));2.插入数据insert intotmp_partition_list(report_date,user_cnt) values("20110816",12);insert intotmp_partition_list(report_date,user_cnt) values("20110816",13);insert intotmp_partition_list(report_date,user_cnt) values("20110817",14);insert intotmp_partition_list(report_date,user_cnt) values("20110817",15);插入的数据会自动插入到指定分区中,如果此字段对应的分区不存在,则会报错,如果有default分区,则会插入到default分区中3.分区的split方法--range分区的split方法alter tabletmp_partition_list split partition p_default at ("20110822") into(partitionp_20110822,partition p_default);--list类型的分区的split方法alter tabletmp_partition_listsplit partitionp_default values ("20110822") into (partitionp_20110822,partition p_default);4.分区添加和删除方法alter tabletmp_partition_list add partition p_20110820 values("20110820");下面两个情况都会报错:此分区存在,或者存在default分区,如果有default分区可使用split分区alter tabletmp_partition_list drop partition p_20110820);5.本地索引的建立方法--初始建立索引的时候必须要加上所有的分区,以后每添加一个分区,分区索引自动分配create indexindex_tmp_partition_list on tmp_partition_list(report_date)local(partition p_20110816,partition p_20110817,partition p_default)--前缀的本地分区索引语法比较简单CREATE INDEXindex_tmp_partition_list ON tmp_partition_list(report_date) LOCAL;本地索引的好处:删除分区,不影响其他索引6.本地分区索引的状态改变--整个索引不可用ALTER INDEXindex_tmp_partition_list  UNUSABLE;--单个分区索引不可用ALTER INDEXindex_tmp_partition_list MODIFY PARTITION p_20110816 USABLE;--分区不可用之后,需要重建索引alter indexindex_tmp_partition_list rebuild partition p_20110816;--查看分区索引的状态selectindex_name,partition_name,tablespace_name,statusfromuser_ind_partitionswherelower(index_name)="index_tmp_partition_list";7.使用策略(1)添加当天的新分区(2)导入数据(3)此分区索引rebuild配置Oracle 10g 双向流复制Oracle数据库升级前必要的准备工作相关资讯      Oracle基础教程 
  • Oracle块编程返回结果集详解  (11/10/2013 10:45:58)
  • Oracle基础教程之设置系统全局区  (08/22/2013 14:24:00)
  • Oracle基础教程知识点总结  (06/18/2013 07:43:32)
  • Oracle基础教程之tkprof程序详解  (10/22/2013 11:49:50)
  • Oracle基础教程之sqlplus汉字乱码  (07/18/2013 16:30:00)
  • Oracle 管理之 Linux 网络基础  (02/16/2013 18:37:35)
本文评论 查看全部评论 (0)
表情: 姓名: 字数