数据文件是数据库的物理存储单位,而表空间TableSpace则是数据库的逻辑组成部分。数据库的数据是存储在表空间中的,而一个表空间可以由一个或多个数据文件组成,一个数据文件只能属于一个表空间。一旦数据文件被加入到某个表空间后,就不能删除这个文件,如果要删除某个数据文件,只能删除其所属于的表空间才行。
产生表空间一般都是DBA或特权用户来完成的,如果要以其他的身份来产生,这个用户必须由Create tablespace权限才行。产生一个表空间时,一般需要产生一个数据文件,并确定文件的大小和段的大小。
产生一个表空间,确定数据文件,文件大小和区大小:
create tablespace date01 datafile d:/oracle/oradata/scut/date01.dbf size 200m uniform size 128k
删除一个表空间和数据文件:
drop tablespace date01 including contents and datafiles;
改变一个表空间的大小:
? 添加数据文件:
alter tablespace date01 add datafile d:/oracle/oradata/scut/date03.dbf size 50m;
? 手工增加文件尺寸
alter database datafile d:/oracle/oradata/scut/date03.dbf resize 100m;
? 设置文件数据自动扩展
alter database datafile d:/oracle/oradata/scut/date03.dbf autoextend on next 10m maxsize 500m;
移动数据文件:
移动数据文件有两种方式,一是alter tablespace,另一种是alter database。
? 在OPEN状态下移动数据文件
在这种状态下,移动文件通过alter dataspace命令来完成,并且要求表空间处于脱机状态。 由于system和undo表空间不能处于脱机,所以在这种方式中不能移动它们。
下面是移动一个普通数据文件的方法:
? 确定文件处于的表空间:
select tablespace_name from dba_data_files where file_name =D:/ORACLE/ORADATA/DATE03.DBF;
? 使表空间脱机:
alter tablespace date01 offline;
? 使用OS命令移动文件:
host move d:/oracle/oradata/scut/date03.dbf d:/oracle/ora92/date03.dbf;
? 执行Alter dataspace命令,必须确保文件被移动了:
alter tablespace date01 rename datafile d:/oracle/oradata/scut/date03.dbf to d:/oracle/ora92/date03.dbf’;
? 使表空间联机:
alter tablespace date01 online;
? 在MOUNT状态下移动数据文件
在MOUNT状态下,可以移动任何数据文件,包括SYSTEM和UNDO表空间。它使用的命令是alter database
? 关闭数据库
Shutdown immediate
Startup mount
? 移动数据
host move d:/oracle/oradata/scut/date03.dbf d:/oracle/ora92/date03.dbf;
? 执行alter database
Alter database date01 renam file ‘…..’ to ‘……’
? 打开数据库
Alter database open
本文转自
http://blog.tostudy.com.cn/blog/show_991.html
产生表空间一般都是DBA或特权用户来完成的,如果要以其他的身份来产生,这个用户必须由Create tablespace权限才行。产生一个表空间时,一般需要产生一个数据文件,并确定文件的大小和段的大小。
产生一个表空间,确定数据文件,文件大小和区大小:
create tablespace date01 datafile d:/oracle/oradata/scut/date01.dbf size 200m uniform size 128k
删除一个表空间和数据文件:
drop tablespace date01 including contents and datafiles;
改变一个表空间的大小:
? 添加数据文件:
alter tablespace date01 add datafile d:/oracle/oradata/scut/date03.dbf size 50m;
? 手工增加文件尺寸
alter database datafile d:/oracle/oradata/scut/date03.dbf resize 100m;
? 设置文件数据自动扩展
alter database datafile d:/oracle/oradata/scut/date03.dbf autoextend on next 10m maxsize 500m;
移动数据文件:
移动数据文件有两种方式,一是alter tablespace,另一种是alter database。
? 在OPEN状态下移动数据文件
在这种状态下,移动文件通过alter dataspace命令来完成,并且要求表空间处于脱机状态。 由于system和undo表空间不能处于脱机,所以在这种方式中不能移动它们。
下面是移动一个普通数据文件的方法:
? 确定文件处于的表空间:
select tablespace_name from dba_data_files where file_name =D:/ORACLE/ORADATA/DATE03.DBF;
? 使表空间脱机:
alter tablespace date01 offline;
? 使用OS命令移动文件:
host move d:/oracle/oradata/scut/date03.dbf d:/oracle/ora92/date03.dbf;
? 执行Alter dataspace命令,必须确保文件被移动了:
alter tablespace date01 rename datafile d:/oracle/oradata/scut/date03.dbf to d:/oracle/ora92/date03.dbf’;
? 使表空间联机:
alter tablespace date01 online;
? 在MOUNT状态下移动数据文件
在MOUNT状态下,可以移动任何数据文件,包括SYSTEM和UNDO表空间。它使用的命令是alter database
? 关闭数据库
Shutdown immediate
Startup mount
? 移动数据
host move d:/oracle/oradata/scut/date03.dbf d:/oracle/ora92/date03.dbf;
? 执行alter database
Alter database date01 renam file ‘…..’ to ‘……’
? 打开数据库
Alter database open
本文转自
http://blog.tostudy.com.cn/blog/show_991.html