最近做了一个迁移项目,将同机单实例数据库添加到集群中。当时由于建实例的时候,没有将数据库建成rac,而是建成了一个单实例,用了一段时间后,客户要求加入到集群,现在就将整个过程与大家分享!具体步骤下:
从单数据库到集群数据库,需要调整几个地方的参数,通常以下参数必须添加进去的,如下:
*.cluster_database=true
ncdb651.instance_number=1
ncdb652.instance_number=2
ncdb652.thread=2
ncdb651.thread=1
ncdb652.undo_tablespace='UNDOTBS2'
ncdb651.undo_tablespace='UNDOTBS1'
ncdb651.log_archive_format='%t_%s_%r.dbf'
ncdb652.log_archive_format='%t_%s_%r.dbf'
ncdb651.log_archive_dest_1='LOCATION=+RECO'
ncdb652.log_archive_dest_1='LOCATION=+RECO'
2、数据库配置
以新参数据启动数据库
[oracle@NCDATA1 ~]# export ORACLE_SID=ncdb651 --注意,实例变了
SQL> startup mount pfile=’/u02/backup/spfilebak.ora’;
创建第二节点重做日志
创建第二节点undo空间
开启第二节点
SQL> alter database open;
SQL> alter database enable thread 2;
同时,将刚才的参数放在第二个节点上启动数据库,数据库正常启动。
[oracle@NCDATA2 ~]# echo $ORACLE_HOME
SQL> startup mount pfile=’/u02/backup/spfilebak.ora’;
SQL> alter database open;
3、加入集群rac
将数据库加入集群
[oracle@NCDATA1 ~]# echo $ORACLE_HOME
查看加入情况
说明加入已经成功了!
4、调整参数
[oracle@NCDATA1 ~]# cd $ORACLE_HOME/dbs
[oracle@NCDATA1 ~]# vi initncdb651.ora
spfile=’+data/ncdb65/parameterfile/spfilencdb65.ora’
注意,在第二节点同样的位置,编辑的文件名:initncdb652.ora
调整完成后,分别在两个节点启动数据库,结果成功,到此,单实例到rac迁移完成。