环境 centos7 oracle11
1.查看要改变的表空间的数据文件信息
SQL> select tablespace_name,file_name,online_status from dba_data_files where tablespace_name='EXAMPLE';
TABLESPACE_NAME FILE_NAME ONLINE_
--------------- ----------------------------------- -------
EXAMPLE /opt/oracle/oradata/EXAMPLE01.DBF ONLINE
EXAMPLE为要移动的表空间名
select tablespace_name from dba_data_files;
查看所有表空间名
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 /opt/oracle/oradata/EXAMPLE01.DBF OFFLINE
4.将原来的数据文件移动(或复制)到新的路径
SQL> host mv /opt/oracle/oradata/EXAMPLE01.DBF /mnt/oracle/oradata/
5.修改该表空间的数据文件路径
SQL> alter tablespace EXAMPLE rename datafile '/opt/oracle/oradata/EXAMPLE01.DBF' to '/mnt/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 /mnt/oracle/oradata/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 /mnt/oracle/oradata/EXAMPLE01.DBF ONLINE
备注:本方法对SYSAUX、USERS表空间也适用
网友评论