选择显示字体大小

oracle8的分区管理

摘要:本篇文章介绍了oracle数据库的新特性—分区管理,并用例子说明使用方法。

一、 分区概述:

  为了简化数据库大表的管理,oracle8推出了分区选项。分区将表分离在若干不同的表空间上,用分而治之的方法来支撑无限膨胀的大表,给大表在物理一级的可管理性。将大表分割成较小的分区可以改善表的维护、备份、恢复、事务及查询性能。针对当前社保及电信行业的大量日常业务数据,可以推荐使用oracle8的该选项。

二、分区的优点:

1 、增强可用性:如果表的一个分区由于系统故障而不能使用,表的其余好的分区仍然可以使用;

2 、减少关闭时间:如果系统故障只影响表的一部分分区,那么只有这部分分区需要修复,故能比整个大表修复花的时间更少;

3 、维护轻松:如果需要重建表,独立管理每个分区比管理单个大表要轻松得多;

4 、均衡i/o:可以把表的不同分区分配到不同的磁盘来平衡i/o改善性能;

5 、改善性能:对大表的查询、增加、修改等操作可以分解到表的不同分区来并行执行,可使运行速度更快;

6 、分区对用户透明,最终用户感觉不到分区的存在。


三、分区的管理:

1 、分区表的建立:

  某公司的每年产生巨大的销售记录,dba向公司建议每季度的数据放在一个分区内,以下示范的是该公司1999年的数据(假设每月产生30m的数据),操作如下:


step1、建立表的各个分区的表空间:

create tablespace ts_sale1999q1

datafile ‘/u1/oradata/sales/sales1999_q1.dat’

size 100m

default storage (initial 30m next 30m minextents 3 pctincrease 0)

create tablespace ts_sale1999q2

datafile ‘/u1/oradata/sales/sales1999_q2.dat’

size 100m

default storage (initial 30m next 30m minextents 3 pctincrease 0)

create tablespace ts_sale1999q3

datafile ‘/u1/oradata/sales/sales1999_q3.dat’

size 100m

default storage (initial 30m next 30m minextents 3 pctincrease 0)

create tablespace ts_sale1999q4

datafile ‘/u1/oradata/sales/sales1999_q4.dat’

size 100m

default storage (initial 30m next 30m minextents 3 pctincrease 0)


step2、建立基于分区的表:

create table sales

(invoice_no number,

...

sale_date date not null )

partition by range (sale_date)

(partition sales1999_q1

values less than (to_date(‘1999-04-01’,’yyyy-mm-dd’)

tablespace ts_sale1999q1,

partition sales1999_q2

values less than (to_date(‘1999-07-01’,’yyyy-mm-dd’)

tablespace ts_sale1999q2,

partition sales1999_q3

values less than (to_date(‘1999-10-01’,’yyyy-mm-dd’)

tablespace ts_sale1999q3,

partition sales1999_q4

values less than (to_date(‘2000-01-01’,’yyyy-mm-dd’)

tablespace ts_sale1999q4 );


三、分区的管理:

2 、分区表的扩容:

  到了1999年年底,dba应向表中加入2000年的表空间,同样是每季度一个表空间,由于公司业务欣欣向荣,预计每个分区为40m,操作如下。

step1、建立表空间:

create tablespace ts_sale2000q1

datafile ‘/u1/oradata/sales/sales2000_q1.dat’

size 130m

default storage (initial 40m next 40m minextents 3 pctincrease 0)

其他表空间ts_sale2000q2,ts_sale2000q3,ts_sales2000q4如法炮制。

step2、为表添加表空间:

alter table sales

add partition sales2000_q1

values less than (to_date(‘2000-04-01’,’yyyy-mm-dd’)

tablespace ts_sale2000q1;

其他分区sales2000_q1,sales2000_q1,sales2000_q1如法炮制。


3 、删除不必要的分区:

  公司规定:销售的明细数据两年内必须保存在线。到2001年,dba必须将1999年的数据备份(备份方法见5、export分区),将1999年的分区删除,将空间供后来的数据使用。如此循环,永远保持两年的销售数据在线。


 


关键字 本文所属关键字

相关 与本文相关文章

分类 所有文章关键字导航

源码编程相关

Java   Asp   PHP   .Net   XML   C/C++   CGI   VB   Jsp   J2ee   J2se   J2me   EJB   Servlet   Tomcat   Resin   Struts   Weblogic   Eclipse   ANT   GUI   JMS   Web servise   IDEA   Webphere   Hibernate   Spring   Jboss   Applet   Swing   Socket   Javamail   Perl   Ajax   P2P   安全   模式   框架   测试   开源   游戏

SQL数据库相关

My-SQL   Ms-SQL   Access   DB2   Oracle   Sybase   SQLserver   索引   存储过程   加密   数据库   分页   视图  

手机无线相关

3G   Wap   CDMA   GRPS   GSM   IVR   彩信   短信   无线   增值业务

网页设计制作相关

HTML   CSS   网页配色   网页特效   Javascript   VBscript   Dreamweaver   Frontpage   JS   Web   网站设计

网站建设推广相关

建站经验   网站优化   网站排名   推广   Alexa

操作系统/服务器相关

Windows XP   Windows 2000   Windows 2003   Windows Me   Windows 9.x   Linux   UNIX   注册表   操作系统   服务器   应用服务器

图形图像多媒体相关

Photoshop   Fireworks   Flash   Coreldraw   Illustrator   Freehand   Photoimpact   多媒体   图形图像

标准 网站致力的规范

Valid CSS!

无不良内容,无不良广告,无恶意代码

Valid XHTML 1.0 Transitional

creativecommons