|
实现把用户表空间中的数据文件从某一个路径移动到另一个路径
例如将非系统表空间从D:\ORADATA\ORCL\ 移动到 D:\ORACLE\ORADATA\
1.查看要改变的表空间的数据文件信息
SQL> select tablespace_name,file_name,online_status
from dba_data_files
where tablespace_name='EXAMPLE';
TABLESPACE_NAME FILE_NAME ONLINE_
--------------- ----------------------------------- -------
EXAMPLE D:\ORADATA\ORCL\EXAMPLE01.DBF ONLINE
2.将目标表空间设置为脱机状态
SQL> alter tablespace EXAMPLE offline;
3.再次查看目标表空间的状态,确保其已经是脱机状态
SQL> select tablespace_name,file_name,online_status
from dba_data_files
where tablespace_name='EXAMPLE';
TABLESPACE_NAME FILE_NAME ONLINE_
--------------- ----------------------------------- -------
EXAMPLE D:\ORACLE\ORADATA\EXAMPLE01.DBF OFFLINE
4.将原来的数据文件移动(或复制)到新的路径
SQL> host move D:\ORADATA\ORCL\EXAMPLE01.DBF D:\ORACLE\ORADATA\
5.修改该表空间的数据文件路径
SQL> alter tablespace EXAMPLE
rename datafile 'D:\ORADATA\ORCL\EXAMPLE01.DBF'
to 'D:\ORACLE\ORADATA\EXAMPLE01.DBF';
6.查看该表空间修改后的信息,确保信息无误
SQL> select tablespace_name,file_name,online_status
from dba_data_files
where tablespace_name='EXAMPLE';
TABLESPACE_NAME FILE_NAME ONLINE_
--------------- ----------------------------------- -------
EXAMPLE D:\ORACLE\ORADATA\EXAMPLE01.DBF OFFLINE
7.修改该表空间为在线状态
SQL> alter tablespace EXAMPLE online;
8.查看该表空间最后结果
SQL> select tablespace_name,file_name,online_status
from dba_data_files
where tablespace_name='EXAMPLE';
TABLESPACE_NAME FILE_NAME ONLINE_
--------------- ----------------------------------- -------
EXAMPLE D:\ORACLE\ORADATA\EXAMPLE01.DBF ONLINE
|
|