首页 > Oracle > Move a Database From Non-ASM to ASM

Move a Database From Non-ASM to ASM

1 编辑参数文件指定新的控制文件路径

SQL> create pfile=’/tmp/inityang.ora’ from spfile;
SQL> shutdown immediate
— 修改controlfile参数值
$ vi /tmp/inityang.ora
controlfile=’+DATA/uc/control01.ctl’,’+DATA/uc/control02.ctl’


2 恢复控制文件
1)启动数据库到nomount模式

startup nomount pfile=’/tmp/inityang.ora’

2)RMAN恢复控制文件
RMAN> restore controlfile from ‘/olcjdb2/oradata/uc/control01.ctl’;
3)启动数据库到mount模式

RMAN> alter database mount;

3 RMAN Copy 数据文件

RMAN> backup as copy database format ‘+DATA’;

4 切换数据文件
这是一个修改控制文件记录的过程

RMAN> switch database to copy;

5 切换临时文件,并打开数据库

RMAN> run {
set newname for tempfile 1 to ‘+DATA’;
switch tempfile all;
}


RMAN> ALTER DATABASE OPEN;

6 迁移重做日志文件

set linesize 200
set pagesize 200
col member for a80
SQL> SELECT a.group#, b.member, a.status FROM v$log a, v$logfile b WHERE a.group#=b.group#;
SQL> ALTER DATABASE ADD LOGFILE MEMBER ‘+DATA’ TO GROUP 1;
SQL> ALTER DATABASE ADD LOGFILE MEMBER ‘+DATA’ TO GROUP 2;
SQL> ALTER DATABASE ADD LOGFILE MEMBER ‘+DATA’ TO GROUP 3;
SQL> ALTER SYSTEM SWITCH LOGFILE;
SQL> ALTER DATABASE DROP LOGFILE MEMBER ‘/olcjdb2/oradata/uc/redo01.log’;
SQL> ALTER SYSTEM SWITCH LOGFILE;
SQL> ALTER DATABASE DROP LOGFILE MEMBER ‘/olcjdb2/oradata/uc/redo02.log’;
SQL> ALTER SYSTEM SWITCH LOGFILE;
SQL> ALTER DATABASE DROP LOGFILE MEMBER ‘/olcjdb2/oradata/uc/redo03.log’;
SQL> ALTER SYSTEM CHECKPOINT;
SQL> SELECT a.group#, b.member, a.status FROM v$log a, v$logfile b WHERE a.group#=b.group#;

7 服务器参数文件,并重启数据库

— 在ASM磁盘组中创建服务器参数文件
SQL> create spfile=’+DATA’ from pfile=’/tmp/pfile.ora’;
— 正常关闭数据库
SQL> shutdown immediate
— 删除$ORACLE_HOME/dbs/spfileuc.ora
$ rm $ORACLE_HOME/dbs/spfileuc.ora
— 建立$ORACLE_HOME/dbs/inituc.ora,编辑内容指定ASM磁盘组中的服务器参数文件。
$ vi inituc.ora
spfile=’+DATA/uc/PARAMETERFILE/spfile.287.897889517′
–启动数据库(会自动找到参数文件进而转到ASM磁盘组中的服务器参数文件)
SQL> startup

8 验证

–控制文件
select name from v$controlfile;
–数据文件
select name from v$datafile;
–临时文件
select name from v$tempfile;
–日志文件
select member from v$logfile;
–参数文件
show parameter pfile

9 参照
Steps To Migrate/Move a Database From Non-ASM to ASM And Vice-Versa (文档 ID 252219.1)

分类: Oracle 标签: , ,
  1. 本文目前尚无任何评论.
  1. 本文目前尚无任何 trackbacks 和 pingbacks.