Oracle的分区治理

cexo821 2009-04-01 11:06:07
Oracle的分区治理

现在的问题是,有一张业务表,无限增长的,不知道怎么通过Oracle处理

请达人们指教
...全文
69 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
pinklotus 2009-04-10
  • 打赏
  • 举报
回复
如果数据无限增长,并且增长量比较大的话,还是按月+天分区可能要好一点吧!
CREATE TABLE table_name
(invoice_no NUMBER,
...
date DATE NOT NULL,
partid varchar(4))
PARTITION BY RANGE (partid)
(PARTITION p1_1
VALUES LESS THAN '0112'
TABLESPACE tbs1,
PARTITION p1_2
VALUES LESS THAN '0122'
TABLESPACE tbs2,
PARTITION p1_3
VALUES LESS THAN '0132'
........
mosaic 2009-04-09
  • 打赏
  • 举报
回复
按范围分区例子:

CREATE TABLE sales
(invoice_no NUMBER,
...
sale_date DATE NOT NULL )
PARTITION BY RANGE (sale_date)
(PARTITION p1
VALUES LESS THAN (TO_DATE('2009-01-01','YYYY-MM-DD')
TABLESPACE tbs1,
PARTITION p2
VALUES LESS THAN (TO_DATE('2009-02-01','YYYY-MM-DD')
TABLESPACE tbs2,
PARTITION p3
VALUES LESS THAN (TO_DATE('2009-03-01','YYYY-MM-DD')
TABLESPACE tbs3,
PARTITION p4
VALUES LESS THAN (TO_DATE('2009-04-01','YYYY-MM-DD')
TABLESPACE tbs4 );

以后再增加分区:
ALTER TABLE sales
ADD PARTITION p5
VALUES LESS THAN (TO_DATE('2009-05-01','YYYY-MM-DD')
TABLESPACE tbs5;
rockywu 2009-04-09
  • 打赏
  • 举报
回复
[Quote=引用 4 楼 mosaic 的回复:]
按范围分区例子:

CREATE TABLE sales
(invoice_no NUMBER,
...
sale_date DATE NOT NULL )
PARTITION BY RANGE (sale_date)
(PARTITION p1
VALUES LESS THAN (TO_DATE('2009-01-01','YYYY-MM-DD')
TABLESPACE tbs1,
PARTITION p2
VALUES LESS THAN (TO_DATE('2009-02-01','YYYY-MM-DD')
TABLESPACE tbs2,
PARTITION p3
VALUES LESS THAN (TO_DATE('2009-03-01','YYYY-MM-DD')
TABLESPACE tbs3,

[/Quote]
十分好,学习了
cexo821 2009-04-01
  • 打赏
  • 举报
回复
没做过Oracle的分区,如何操作,能不能说清楚点。。。
cexo821 2009-04-01
  • 打赏
  • 举报
回复
没做过Oracle的分区,如何操作,能不能说清楚点。。。
chensi05 2009-04-01
  • 打赏
  • 举报
回复
按月分区,按年份分库

17,377

社区成员

发帖
与我相关
我的任务
社区描述
Oracle 基础和管理
社区管理员
  • 基础和管理社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧