需要使用CREATE TABLESPACE语句。其基本语法如下:
CREATE [ TEMPORARY I UNDO] TABLESPACE tablespace name
[ DATAFILE | TEMPFILE 'file_ name' SIZE size K | M [ REUSE ]
- [ AUTOEXTEND OFF | ON
- [ NEXT number K | M MAXSIZE UNLIMITED | number K | M ].....
- ][ MININUM EXTENT number K | M ]
- [BLOCKSIZE number K]
- [ ONLINE | OFFLINE ]
- [ LOGGING I NOLOGGING ]
- [ FORCE LOGGING]
- [ DEFAULT STORAGE storage]
- [COMPRESS I NOCOMPRESS ]
- [ PERMANENT| TEMPORARY ]
- [EXTENT MANAGEMENT DICTIONARY | LOCAL
- [ AUTOALLOCATE |UNIFORM SIZE number K | M ]]
- [ SEGMENT SPACE MANAGEMENT AUTO | MANUAL ];
例如: 创建一个MYSPACE的表空间,此表空间存放位置d:\data 这个表空间初始大小为20M,每次增长5M,这个数据文件最大100M。
create tablespace myspace
datafile 'd:\data\myspace.dbf'
size 20M
autoextend ON next 5M
maxsize 100M;
dba_tablespace;
例如 :查看myspace表空间基本信息。
select *
from dba_tablespaces_name,maxsize
tablespaces
where table_name='MYSPACE';
一:查看myspace的表空间状态
select tablespace_name,st
from dba_tablespaces;
二:修改myspace表空间状态
alter tablespace tablespace_name READ only;
格式:
alter tablespace tablespace_name rename to new_tablespace_name;
查看修改结果:
select tablespace tablespace_name,status
from dba_tablespaces;
(1)查看表空间数据文件大小
select tablespace_name ,byte,blocks
from dba_free_space
where tablespace_name="MYSPACE";
(2)格式
alter database
datafile '路径'
resize 几几M;
(3)例如:修改myspace表空间得数据文件大小
alter database
datafile 'd:\data\myspace.dbf'
resize 40M;
增加表空间的数据文件
例如: 给myspace表空间增加两个数据文件,myspace02,myspace03,初始大小为10,自动增长5,最大40M
alter tablespace myspace1
add datafile 'd:\data\myspace02.dbf'
size 10M
autoextend on next 5M maxsize 40M,
'd:\data\myspace03.dbf'
size 10M
autoextend on next 5M maxsize 40M;
格式:
alter tablespace tablespace_name
drop datafile '路径';
修改表空间中数据文件的自动扩展性
1.作用: 表空间被填满后,Oracle能自动为表空间扩展存储空间
2.格式:
alter database
datafile
autoextend off on
next number k|m maxsize unlimited |k|m
3.实践
例如:LTZspace02.dbf数据文件自动扩展关闭
alter batabase
datafile 'd:\data\myspace.dbf'
autoextend off;
例如:将LTZ02.bdf数据文件自动扩展打开,每次自动增长15M,最大40M
alter database
datafile 'd:\data\myspace.dbf'
autoextend ON
next 15M
maxsize 40M;
设置数据文件状态的语法:
alter database
datafile ’路径’ ONLINE/OFFLINE/OFFLINE DROP
其中,ONLINE表示数据文件可以使用
OFFLINE表示数据文件不可使用,用于数据库运行在归档模式下的情况
OFFLINE DROP与OFFLINE一样用于设置数据文件不可用,但它用于数据库运行在非归档模式下的情况
例如:将OFFLINE DROP的数据文件改为ONLINE
第一步:先介质恢复
recover datafile '路径';
第二步:修改状态为ONLINE
alter database
datafile '路径' ONLINE;
例如:将上述myspace.dbf数据文件的状态切换为online,
第一步先介质恢复
recover datafile 'd:data\myspace.dbf' ;
第二步修改状态为online
alter database
datafile 'd:data\myspace.dbf' online;
1.移动步骤
2.例如,移动myspace表空间中数据文件myspace02.dbf得步骤如下:
(1)修改myspace表空间的状态为OFFLINE,如下:
alter tablespace myspace OFFLINE normal;
(2) 将磁盘中的myspace02.dbf文件移动到新的目录中,例如移动到D:\oraclefil目录中,文件的名称也可以修改,例如,修改为myspace03.dbf
移动表空间的数据文件
host move 原路径 新路径;
(3) 使用 alter tablespace语句将myspac表空间中myspace02.dbf原名称和路径修改为:
alter tablespace myspace
rename datafile
'原路径' to '新路径(新数据文件名称)';
(4)将状态修改为ONLINE状态
表空间的删除
drop tablespace 表空间名;