生产环境采用ASM存储,在扩容表空间时,数据文件路径未添加+号,导致数据文件创建在ORACLE_HOME下了,需要将数据文件迁移到ASM中去

1、查询数据文件对应的ID

SQL> select file_name,file_id,tablespace_name from dba_data_files;

2、将数据文件拷贝到ASM中

RMAN> backup as copy datafile [file_id] format '+DATA';

3、将数据文件offline

SQL> alter database datafile [file_id] offline;

4、重命名数据文件

SQL> alter database rename file '[file_name]' to '[+DATA/...]';

5、恢复数据文件

SQL> recover datafile [file_id];

6、数据文件ONLINE

SQL> alter database datafile [file_id] online;