ITPub博客

首页 > 数据库 > Oracle > asm与文件系统相互迁移-rman copy(非归档方式)

asm与文件系统相互迁移-rman copy(非归档方式)

原创 Oracle 作者:wanghao2979 时间:2017-03-29 16:24:00 0 删除 编辑
需要迁移的文件有    * 数据文件  * 控制文件 * 临时表空间文件 * redo 文件 * UNDO 文件


1.将数据库在 mount 状态下


shutdown immediate;
startup mount;


2.迁移数据文件(也可考虑并行)

copy datafile '+DG/test/datafile/system.293.939434861' to  '/u01/app/oracle/oradata/test/system.293.939434861';
copy datafile '+DG/test/datafile/sysaux.294.939434861' to  '/u01/app/oracle/oradata/test/sysaux.294.939434861';
copy datafile '+DG/test/datafile/undotbs1.295.939434861' to  '/u01/app/oracle/oradata/test/undotbs1.295.939434861';
copy datafile '+DG/test/datafile/users.296.939434861' to  '/u01/app/oracle/oradata/test/users.296.939434861';


rman target / 执行上面语句

alter database rename file '+DG/test/datafile/system.293.939434861' to  '/u01/app/oracle/oradata/test/system.293.939434861';
alter database rename file '+DG/test/datafile/sysaux.294.939434861' to  '/u01/app/oracle/oradata/test/sysaux.294.939434861';
alter database rename file '+DG/test/datafile/undotbs1.295.939434861' to  '/u01/app/oracle/oradata/test/undotbs1.295.939434861';
alter database rename file '+DG/test/datafile/users.296.939434861' to  '/u01/app/oracle/oradata/test/users.296.939434861';




sqlplus 下执行上面语句


alter database open;


3.迁移控制文件


SQL> create pfile='/u01/app/oracle/test.ora' from spfile;


File created.




修改  /u01/app/oracle/test.ora


*.control_files='/u01/app/oracle/control.ctl'




 直接cp 控制文件 (复制当前控制文件)
关库
ASMCMD> cp +DG/TEST/CONTROLFILE/Current.290.939861683 /u01/app/oracle/control.ctl
注意修改 control.ctl 文件权限
使用 pfile 启库


4.迁移redo





SQL> alter database add logfile '/u01/app/oracle/oradata/test/nredo1.log' size 512m;


Database altered.


SQL> alter database add logfile '/u01/app/oracle/oradata/test/nredo2.log' size 512m;


Database altered.


SQL> alter database add logfile '/u01/app/oracle/oradata/test/nredo3.log' size 512m;


Database altered.




进行多次 alter system switch logfile;




SQL> alter database drop logfile group 1;


Database altered.


SQL> alter database drop logfile group 2;


Database altered.


SQL> alter database drop logfile group 3;


Database altered.




5.迁移 temp 文件


SQL> create TEMPORARY TABLESPACE temp1 tempfile '/u01/app/oracle/oradata/test/temp01.dbf' size 512m;


Tablespace created.


SQL> alter database default temporary tablespace TEMP1;


Database altered.


SQL> drop TABLESPACE TEMP;


Tablespace dropped.




SQL> col name for a60
SQL>  select file#,name from v$tempfile;


     FILE# NAME
---------- ------------------------------------------------------------
         2 /u01/app/oracle/oradata/test/temp01.dbf




到此迁移完成,rman copy (非归档方式),需要多次停库,感觉不太适用,你们学会了么




来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/7569309/viewspace-2136279/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论
主要负责客户现场exadata与exalogic设备的维护工作, 擅长于ORACLE数据库环境/高可用环境的搭建及故障诊断, 并且也获有 11g ocp 证书,10g ocm 证书

注册时间:2017-01-10

  • 博文量
    90
  • 访问量
    84716