文章详情

短信预约-IT技能 免费直播动态提醒

请输入下面的图形验证码

提交验证

短信预约提醒成功

oracle分区表的优缺点及用法

2024-04-02 19:55

关注

本篇内容介绍了“oracle分区表的优缺点及用法”的有关知识,在实际案例的操作过程中,不少人都会遇到这样的困境,接下来就让小编带领大家学习一下如何处理这些情况吧!希望大家仔细阅读,能够学有所成!

I 分区表的概述:

    Oracle的表分区功能通过改善可管理性、性能和可用性,从而为各式应用程序带来了极大的好处。通常,分区可以使某些查询以及维护操作的性能大大提高。此外,分区还可以极大简化常见的管理任务,分区是构建千兆字节数据系统或超高可用性系统的关键工具。
    分区功能能够将表、索引或索引组织表进一步细分为段,这些数据库对象的段叫做分区。每个分区有自己的名称,还可以选择自己的存储特性。从数据库管理员的角度来看,一个分区后的对象具有多个段,这些段既可进行集体管理,也可单独管理,这就使数据库管理员在管理分区后的对象时有相当大的灵活性。

1、分区表的优点:

  (1)由于将数据分散到各个分区中,减少了数据损坏的可能性; 
  (2)可以对单独的分区进行备份和恢复; 
  (3)可以将分区映射到不同的物理磁盘上,来分散IO; 
  (4)提高可管理性、可用性和性能。

2、什么时候用分区表

   (1) 单表过大,超过一定范围,建议以g计算表,均可考虑用分区
  (2)历史数据据需要剥离的
  (3)查询特征非常明显,比如是按整年、整月或者按某个范围!

3、分区表的类型

   1、range分区,按范围
   2、list分区,列举分区
   3、hash分区,根据hash值进行的散列分区
   4、复合分区,9i开始,Oracle就包括了2种复合分区,RANGE-HASH和RANGE-LIST。在11g,Oracle一下就提供了4种复合分区:RANGE-RANGE、LIST-RANGE、LIST-HASH和LIST-LIST。

II 创建分区的举例

11g自动分区技术

CREATE TABLE auto_partition (
OBJECT_ID NUMBER,
OBJECT_TYPE VARCHAR2(128),
CREATED DATE)
PARTITION BY RANGE (CREATED)
INTERVAL(NUMTOYMINTERVAL(1, 'month'))
(PARTITION P0 VALUES LESS THAN (TO_DATE('1-1-2011', 'dd-mm-yyyy')));

--按年创建
create table test_jia
(
   ID NUMBER(20) not null,
   REMARK VARCHAR2(1000)
)
PARTITION BY RANGE (CREATE_TIME) INTERVAL (numtoyminterval(1, 'year'))
(partition part_t01 values less than(to_date('2020-01-01', 'yyyy-mm-dd')));

这样,就会每个年系统自动生成一个分区

--INTERVAL (NUMTODSINTERVAL(1,'day'))   表示每天

--INTERVAL (NUMTOYMINTERVAL(1,'mouth'))   表示每月

--INTERVAL (NUMTODSINTERVAL(7,'day'))   表示每周

III分区操作

--添加分区

添加分区
alter table test_jia add partition P3 valuse less than (to_date('2020-01-10','YYYY-MM-DD'));

--删除分区

删除分区
alter table test_jia drop partition P3;

说明,如果表只剩下一个分区了,则不能drop,而应该drop表。在复合分区中,如果一个分区只剩下一个子分区,也不能drop

--truncate 分区

truncate分区
alter table test_jia truncate partition P4;

--合并分区

alter table test_jia merge  partition P1,P2 into partition P2;

注意:不能将分区合并到界限较低的分区。以上代码实现了P1 P2分区的合并

--拆分分区

alter table test_jia split partition P2 at(to_date('2013-02-01','YYYY-MM-DD')) into (partition P21,partition P22);

--重命名分区

alter table test_jia RENAME partition P21 to P2;

--分区表的查询

SQL> select * from test_jia partition(p1);     

no rows selected

--创建分区表索引

create index ind_id on test_jia(id) local;

--分区表索引重建

alter index ind_test_jia rebuild partition p1 ;

oracle分区表的优缺点及用法oracle分区表的优缺点及用法

“oracle分区表的优缺点及用法”的内容就介绍到这里了,感谢大家的阅读。如果想了解更多行业相关的知识可以关注亿速云网站,小编将为大家输出更多高质量的实用文章!

阅读原文内容投诉

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

软考中级精品资料免费领

  • 历年真题答案解析
  • 备考技巧名师总结
  • 高频考点精准押题
  • 2024年上半年信息系统项目管理师第二批次真题及答案解析(完整版)

    难度     813人已做
    查看
  • 【考后总结】2024年5月26日信息系统项目管理师第2批次考情分析

    难度     354人已做
    查看
  • 【考后总结】2024年5月25日信息系统项目管理师第1批次考情分析

    难度     318人已做
    查看
  • 2024年上半年软考高项第一、二批次真题考点汇总(完整版)

    难度     435人已做
    查看
  • 2024年上半年系统架构设计师考试综合知识真题

    难度     224人已做
    查看

相关文章

发现更多好内容

猜你喜欢

AI推送时光机
位置:首页-资讯-数据库
咦!没有更多了?去看看其它编程学习网 内容吧
首页课程
资料下载
问答资讯