Chinaunix首页 | 论坛 | 博客
  • 博客访问: 773114
  • 博文数量: 185
  • 博客积分: 7434
  • 博客等级: 少将
  • 技术积分: 2325
  • 用 户 组: 普通用户
  • 注册时间: 2005-12-29 14:01
文章分类

全部博文(185)

文章存档

2013年(1)

2012年(2)

2011年(17)

2010年(25)

2009年(36)

2008年(104)

分类: Oracle

2008-08-28 10:32:10

在Oracle 10G及以上中,表空间有bigfile tablespace和smallfile tablespace的区别:
 
    bigfile tablespace是Oracle10g的新特性。Bigfile tablespaces包含1个最大4G个blocks 的datafile。因此,使用8KBdata blocks 的bigfile tablespace 最大可以达到32TB。
Bigfile tablespaces 常用于非常大的DB。 如果很大的DB有成千的 read/write datafiles, 那么checkpoints之类的操作将非常费时。如果用一个很大的datafile,减少datafiles的数量,将会提高效率。
创建时使用BIGFILE关键字如下:
CREATE BIGFILE TABLESPACE BIG_DEMO
DATAFILE '/ORADATA/PROD/BIG_DEMO.DBF' SIZE 25G;
 
    Smallfile tablespace是原Oracle tablespace datafile 选项的新名字。 smallfile tablespace中,你可以包含多个datafiles。每个datafile 有最多4M个data blocks。因此, 使用8KB data blocks的smallfile tablespace 中的datafiles 最大32GB。smallfile tablespace最多有1,023 个datafiles。SYSTEM和SYSAUX tablespaces总是smallfile tablespaces。
ORA-01144即表示你的单个数据文件超出了oracle的限制:
如:ORA-01144: File size (4194304 blocks) exceeds maximum of 4194303 blocks
表示你的表空间是Smallfile tablespace,单个数据文件最大只可以有2^22=4194303个blocks,换成KBytes时即乘上你数据库的block_size即可,解决方法是用多个数据文件,不是把单个数据文件设得很大.
 
作者:george.ma
blog:http://blog.chinaunix.net/u/12521/
 
 
阅读(2576) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~