如何在oracle rac环境下修改SID.doc
文本预览下载声明
如何在oracle rac环境下修改SID
导读:就爱阅读网友为您分享以下“如何在oracle rac环境下修改SID”资讯,希望对您有所帮助,感谢您对92的支持!
如何在oracle rac环境下修改SID
因为更改实例名即SID 很少用到,所以这方面的文档非常少,我偶尔在国外一个论坛看到这片文档,所以用中文写出来,因为我也刚好碰到有客户需要更改原来的实例名,数据库版本为的双节点RAC ,在实施之前我在测试环境已经测试过(我的环境是用ASM 存储方案),没任何问题;反观网上有些人写的相关文档,按照文档做的话根本就有问题而且不完整。根据国外那位仁兄所言,这个步骤在11G RAC也可工作,但本人未做过测试。
1. 先导出参数文件spfile 至pfile :
SQL create pfile=‘/home/oracle/tem_pfile’ from spfile;
2. 然后用vi 编辑器编辑刚才导出的参数文件,找到里面所有旧的sid 并将其变为新的sid (一定要修改正确)。
3. 将刚才修改过的pfile 复制到另外一个节点(目录随便) :
scp /home/oracle/tmp_pfile x.x.x.x:/home/oracle/
4. 停止数据库: srvctl stop database -d dbname
在该节点做如下操作:
1. 设置环境变量ORACLE_SID为新的SID
Export ORACLE_SID=new SID
2. 重命名init.ora 文件(在$ORACLE_HOME/dbs目录下)
cp initold sid.ora initnew sid.ora
3. 启动实例到nomount:
startup nomount pfile=/home/oracle/tem_pfile
4. 用我们修改后的pfile 重新创建参数文件spfile (注意我是用asm 来管理数据存储的):
create spfile=+DATADG01/dbname/spfiledbname.ora’ from pfile=’/home/oracle/tem_pfile’;
5. 停止该实例: SQLshutdown immediate
6. 正常启动该实例: SQLStartup
7. 用“select instance_name from v$instance”核实新sid : SQL select instance_name from v$instance
8. 停止实例: SQLshutdown immediate
然后: 1. 更改另外一个节点的init.ora(方法同上)
2. 用srvctl 移除原实例在OCR 中的注册(先停止实例),或者用DBCA 移除也可以:
srvctl remove instance -d dbname -i old sid node 1
srvctl remove instance -d dbname -i old sid node 2
3、用srvctl 删除原实例的服务(先停止服务),或者用DBCA 移除也可以:
srvctl remove service -d dbname -s servicename
3. 注册新实例 ,或者用DBCA 添加也可以 srvctl add instance -d dbname -i new sid node 1 -n hostname node 1
srvctl add instance -d dbname -i new sid node 2 -n hostname node 2
4. 用 DBCA 或 srvctl 命令添加新实例的服务即可: DBCA 图形化添加方法我不说了,srvctl 命令如下:
srvctl add service -d dbname -s servicename -r instance1 -r instance2 -P BASIC
注意:上述号内的内容更改成你实际环境的参数即可。
百度搜索“就爱阅读”,专业资料,生活学习,尽在就爱阅读网92,您的在线图书馆
1
显示全部