首页 > Linux操作系统 > Linux操作系统 > 修改RAC DB的字符集
AIX:5309
HA:5.4
oracle:10.2.0.4
理论上oracle不允许对字符集进行修改,生产环境对于此操作须谨慎,由于是测试库,且国庆期间遭遇到此问题,所以实验记录一下。
1、确认当前字符集和目标字符集
SQL>select userenv('language') from dual;
2、关闭node1的CRS在node2上修改cluster_database参数为FALSE
SQL> Alter system set cluster_database=false scope=spfile;
3、关闭node2的CRS,停止双节点HACMP,然后在node2上varyonvg datavg
4、启动node2的DB到mount状态,此步遭遇ORA-29702: error occurred in Cluster Group Service operation
解决办法:安装oracle单机软件或者停止当前软件的rac属性
5、cd $ORACLE_HOME/rdbms/lib
6、make -f ins_rdbms.mk rac_off
7、make -f ins_rdbms.mk ioracle
8、启动node2的DB到mount
9、按照单机操作步骤修改DB字符集
SQL>ALTER SYSTEM ENABLE RESTRICTED SESSION;
SQL> ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
SQL> ALTER SYSTEM SET AQ_TM_PROCESSES=0;
SQL> ALTER DATABASE OPEN;
SQL> ALTER DATABASE CHARACTER SET internal_use KO16KSC5601;(跳过超子集检测)
SQL> ALTER DATABASE national CHARACTER SET internal KO16KSC5601;(此处ORA-00933报错可以忽略)
SQL> Alter system set cluster_database=true scope=spfile;
SQL> shutdown immediate
10、make -f ins_rdbms.mk rac_on
11、make -f ins_rdbms.mk ioracle
12、varyoffvg datavg,启动双节点HACMP
13、启动双节点CRS
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/702413/viewspace-681502/ ,如需转载,请注明出处,否则将追究法律责任。