Oracle dbf文件转移到其他目录

1、 手动拷贝要转移的数据数据文件'/oracledata/oradata/oss/qm.dbf'到新的位置'/home/oracle/oradata/oss/qm.dbf'
 
2、 把数据文件所属的表空间Offline,在SQLPLUS里运行如下命令:
 
    sqlplus>alter tablespace QM offline;
 
-----如果/oracledata/oradata/oss/om.dbf文件已经损坏,报ORA-19502 & ORA-27072: File I/O error
       可以执行下面操作
           sqlplus>alter database datafile '/oracledata/oradata/oss/qm.dbf' offline drop;
           sqlplus>alter tablespace QM offline; 
 
3、 修改表空间文件路径alter database rename file '旧文件路径' to '新文件路径';
 
    sqlplus>ALTER DATABASE RENAME FILE '/oracledata/oradata/oss/qm.dbf' to '/home/oracle/oradata/oss/qm.dbf';
 
4、 当执行重命名命令后,ORACLE会认为数据库文件损坏,提示:“需要恢复介质”,用下面的SQL关闭数据库的时候可能会提示你没有权限,可以先执行
 
---conn system/password as sysdba
 
sqlplus>shutdown immediate;--关闭数据库
 
sqlplus>startup mount; --以归档模式启动数据库,不打开数据库
 
sqlplus> recover datafile '/home/oracle/oradata/oss/qm.dbf'; --介质恢复
 
sqlplus>alter database open;
 
5、 把表空间Online,这样就可以了
 
sqlplus>alter tablespace QM online;
 
6) 查看数据文件和表空间及状态
 
sqlplus> select file_name,tablespace_name,status from dba_data_files;
 
posted @ 2021-07-07 11:26  rookie_ray  阅读(558)  评论(0编辑  收藏  举报