*数据库在open状态下用alter tablespace 移动数据文件,要求表空间处于offline状态,使用该
方法不能移动system和sysaux表空间的数据文件,因为system和sysaux表空间不能offline
1、确定数据文件所在表空间
select tablespace_name from dba_data_files
where file_name='D:\DEMO\USER01.DBF';
2、使表空间脱机
alter tablespace user01 offline;
3、使用OS命令移动数据文件到目标位置
SQL>host move D:\DEMO\USER01.DBF E:\DEMO\USER01.DBF
4、执行alter tablespace
alter tablespace user01 rename datafile ‘D:\DEMO\USER01.DBF' to ’E:\DEMO\USER01.DBF';
5、使表空间联机
alter tablespace user01 online;
* 在mount状态下移动数据文件,alter database
1、关闭并装载数据库
SQL>shutdown immediate;
sql>startup mount
2、移动数据文件到目标位置
SQL> HOST MOVE D:\DEMO\SYSTEM01.DBF E:\DEMO\SYSTEM01.DBF
3、执行alter database命令进行逻辑修改
alter database rename file ‘D:\DEMO\SYSTEM01.DBF’ to ‘E:\DEMO\SYSTEM01.DBF’;
4、打开数据库
alter database open;