一、针对可offline的非系统表空间
1.查看要改变的表空间的数据文件信息
select tablespace_name,file_name,online_status
from dba_data_files
where tablespace_name='表空间名称';
2.将目标表空间设置为脱机状态
alter tablespace 表空间名称 offline;
3.再次查看目标表空间的状态,确保其已经是脱机状态
select tablespace_name,file_name,online_status
from dba_data_files
where tablespace_name='表空间名称';
4.将原来的数据文件移动(或复制)到新的路径
使用cp命令或者mv命令
5.修改该表空间的数据文件路径
alter tablespace 表空间名称
rename datafile 'D:\ORADATA\ORCL\EXAMPLE01.DBF'
to 'D:\ORACLE\ORADATA\EXAMPLE01.DBF';
6.查看该表空间修改后的信息,确保信息无误
select tablespace_name,file_name,online_status
from dba_data_files
where tablespace_name='表空间名称';
7.修改该表空间为在线状态
alter tablespace 表空间名称 online;
8.查看该表空间最后结果
select tablespace_name,file_name,online_status
from dba_data_files
where tablespace_name='表空间名称';
二、系统表空间移动
该方法需要数据库处于mount状态
1.关闭运行中的数据库
shutdown immediate
2.启动数据库到mount状态
startup mount
3.移动系统表空间(SYSTEM表空间)的数据文件
使用cp 或者mv命令移动
4.修改该表空间的数据文件路径
alter database rename file 'D:\ORADATA\ORCL\SYSTEM01.DBF' to 'D:\ORACLE\ORA
DATA\SYSTEM01.DBF';
5.启动数据库,打开实例
alter database open;
6.查看表空间修改结果
select tablespace_name,file_name,online_status from dba_data_files where ta
blespace_name='SYSTEM';
原文链接:https://blog.csdn.net/qq_41793064/article/details/109559376