mqzlp 发表于 2018-9-9 12:07:39

Oracle 迁移库从文件系统到ASM-7727197

  1、使用RMAN备份库
  前提是,库必须是在archivelog模式下
  RMAN> BACKUP FORMAT '/home/oracle/%t_%T.bkp' DATABASE;
  2、设置新库SID
  export ORACLE_SID=o1
  3、启动新库到DUMMY的NOMOUNT状态,恢复SPFILE
  RMAN> RESTORE SPFILE FROM '/home/oracle/808489927_20130227.bkp' to '/home/oracle/inito1.ora';
  4、创建PFILE,修改PFILE
  SQL> STARTUP NOMOUNT;
  SQL> CREATE PFILE='/home/oracle/inito1.ora' FROM SPFILE;
  修改PFILE中各路径
  5、用修改后的PFILE启动并生成SPFILE,使用SPFILE启动
  SQL> STARTUP PFILE='/home/oracle/inito1.ora';
  SQL> CREATE SPFILE FROM PFILE='/home/oracle/inito1.ora';
  SQL> SHUTDOWN IMMEDIATE;
  SQL> STARTUP NOMOUNT;
  6、还原控制文件
  RMAN> RESTORE CONTROLFILE TO '+DATA/o1/controfile01.ctl' FROM'/home/oracle/808489927_20130227.bkp';
  7、还原数据文件
  RMAN>
  run {
  set newname for datafile '/u01/app/oracle/oradata/orcl/system01.dbf' to '+DATA/o1/system01.dbf';
  set newname for datafile '/u01/app/oracle/oradata/orcl/sysaux01.dbf' to '+DATA/o1/sysaux01.dbf';
  set newname for datafile '/u01/app/oracle/oradata/orcl/undotbs01.dbf' to '+DATA/o1/undotbs01.dbf';
  set newname for datafile '/u01/app/oracle/oradata/orcl/users01.dbf' to '+DATA/o1/users01.dbf';
  restore database;
  }
  8、做不完全恢复并打开数据库
  SQL> RECOVER DATABASE USING BACKUP CONTROLFILE;
  指定其一个原先的REDOLOG文件

  SQL>>  9、在ASM上增加REDOLOG

  SQL>>
  SQL>ALTER DATABASE ADD LOGFILE GROUP 5 '+DATA/o1/redo02.log'>
  SQL>ALTER DATABASE ADD LOGFILE GROUP 6 '+DATA/o1/redo03.log'>  10、逐步DROP原来的旧日志

页: [1]
查看完整版本: Oracle 迁移库从文件系统到ASM-7727197