Chinaunix首页 | 论坛 | 博客
  • 博客访问: 86236
  • 博文数量: 31
  • 博客积分: 2010
  • 博客等级: 大尉
  • 技术积分: 370
  • 用 户 组: 普通用户
  • 注册时间: 2008-06-26 13:33
文章分类

全部博文(31)

文章存档

2009年(5)

2008年(26)

我的朋友

分类: Oracle

2008-08-28 13:54:09

当两个用户对同一个表上共享锁,会产生死锁现象;oracle会自动检测并解除死锁。

 

 

表分区

Oracle 准许用户对表进一步的规化,即对表进一步的拆分,将表分成若干个逻辑部分,每个部分称其为表分区

分区的有点

增强可用性。单个分区出现故障,不影响其他分区

均衡的I/O 。不同的分区可以映射到不同的磁盘

改善性能

 

分区方法

范围分区---这种分区方法是根据表中列值的范围对表进行分区。

       ---分区时,首先依据列中的值可能的范围进行划分

 

如某省对参加四六级考试的成绩进行整理并保存至数据库

我们可以对于分数据段进行划分:

60

P1

75

P2

85

P3

100

P4

 

Create table student

(

  Studentid integer not null,

  Studentname varchar2(20),

  Score integer

)

Partition by range(score)

(

Partition  p1 values less than(60),

Partition  p1 values less than(75),

Partition  p1 values less than(85),

Partition  p1 values less than(maxvalue)

);

  

 

散列分区---提供了一种通过指定分区编号来均匀地分布数据的方法

       ---它通过hash函数将数据映射到相应的分区上

       ---它可使得数据均匀的分布到各分区上,各分区大小趋向一致

 

Create table department

(

Deptno int,

    Deptname varchar2(14)

)

Partition by hash(deptno)

(

    Partition p1,

    Partition p2

);

 

 

复合分区---先对数据进行范围分区,然后在每个子分区又进行散列分区的一种分区方法

Create table salgrade

( grade number, losal number, hisal number)

Partition by rang(grade)

Subpartition by hash(losal,hisal)

(

Partition p1 values less than(10)

    ( subpartition sp1, subpartion sp2),

Partition p2 values less than(20)

    ( subpartition sp3, subpartion sp4),

)

阅读(643) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~