oracle的tablespace管理
表空间分类:
表空间
作用
系统表空间(SYSTEM和SYSAUX)
此表空间必须存在,一般用户存放数据字典表
www.2cto.com
临时表空间(TEMP)
用户排序,分组,索引等
撤消表空间(UNDO)
用户ROLoracle账号LBACK,从逻辑中恢复(可以创建多个表空间,但只能激活一个表空间)
www.2cto.com
Tablespace 管理方式有两种:(管理extent)
1 数据字典空间管理 dictionary managed tablespace
通过管理两个主要的数据字典表,UET$(Used EXtends) 和FET$(Free EXtends)来实现
在9i以后已淘汰
缺点:1 并发访问争用
2 产生大量redo undo
3 空间碎片
2 本地表空间管理 Local managed tablespace
位图管理
数据文件头部加入位图区域
extent management local
具体空间分配方式:
1 autoallocate —-allocation_type=system
2 uniform —-allocation_type=uniform
www.2cto.com
ALLOCATION_TYPE 这个值有3个选项:
1、system:一旦设定该值,next_extent将为空,只有extents值。该值是默认值。这个选项的最小是64K
2、 user:一旦设定该值,就允许我们可以控制next_extent了。只有两种情况出现users:一是该ts是数据字典管理的;另外一个是该ts是从数据字典管理转移到local的(用dbms_space_admin.tablespace_migrate_to_local)
3、uniform:将标明所有的extent的大小将一致,temp表空间只能采用这个方式;以上两个情况的extent的大小将不一致;uniform中的默认值为1M
使用:select * from dba_tablespaces 查询具体信息