Oracle表空间概念及操作

表空间,顾名思义,就是一张表所存在的空间。

一个表同时只能存在于一个表空间,不同表空间的表是相互隔离的,可以取相同的名字。

表空间的分类

  • 临时表空间
    主要用途是在数据库进行排序运算[如创建索引、order by及group by、distinct、union/intersect/minus/、sort-merge及join、analyze命令]、管理索引[如创建索 引、IMP进行数据导入]、访问视图等操作时提供临时的运算空间,当运算完成之后系统会自动清理。
  • 数据表空间
    此空间是用来进行[数据存储]的(表、function、存储过程等),所以是实际物理存储区域。

表空间的便利性:

  1. 将用户隔离,方便赋予权限,限制每个用户的可使用内存。
  2. 限制表可以使用的内存。
  3. 方便将表进行分类操作,大数据量的表放入一个表空间,小数据量的表放入另一个表空间,方便充分利用内存。
  4. 数据与日志隔离

表空间大小限制

表空间数据文件容量与DB_BLOCK_SIZE有关,ORACLE的物理文件最大只允许4194304个数据块,表空间数据文件的最大值为 4194304×DB_BLOCK_SIZE/1024M。

4k最大表空间为: 16384M
8K最大表空间为: 32768M
16k最大表空间为:65536M
32K最大表空间为:131072M
64k最大表空间为:262144M

sql语句如下:

select tablespace_name,file_name,bytes/1024/1024 file_size,autoextensible from dba_temp_files;

select tablespace_name,file_name,bytes/1024/1024 file_size,autoextensible from dba_data_files
 
alter database tempfile  '/oradata/table/kingdee99temp01.dbf' resize 32768M;

add datafile '/oradata/table/kingdee99temp01.dbf' size 10240M; 

你可能感兴趣的:(Oracle表空间概念及操作)