Oracle数据文件转移方法: 1) 手动拷贝要转移的数据数据文件’/opt/oracle/oradata/orcl/xxx.dbf’到新的位置’/opt/oracle/oradata/orcl2/xxx.dbf’。 新CP的数据库文件须授权给oracle用户组 chown -R oracle:oinstall /opt/oracle/oradata/orcl2/xxx.dbf 2) 把数据文件所属的表空间Offline,在SQLPLUS里运行如下命令:

tablespace xxx offline;```
1
2
3) 修改表空间文件路径alter database rename file '旧文件路径' to '新文件路径';

sqlplus>ALTER DATABASE RENAME FILE ‘/opt/oracle/oradata/orcl/xxx.dbf’ to ‘/opt/oracle/oradata/orcl2/xxx.db’;

1
2
4) 当执行重命名命令后,ORACLE会认为数据库文件损坏,提示:“需要恢复介质”

sqlplus>shutdown immediate;–关闭数据库 sqlplus>startup mount;–以归档模式启动数据库,不打开数据库 sqlplus> recover datafile ‘/opt/oracle/oradata/orcl2/xxx.db’; –介质恢复 sqlplus>alter database open;

1
2
5) 把表空间Online,这样就可以了

sqlplus>alter tablespace xxx online;

1
6) 查看数据文件和表空间及状态

sqlplus> select file_name,tablespace_name,status from dba_data_files; ```