rac 环境下修改oracle数据库字符集为GBK

今天安装数据库(oracle10.2.0.4)的时候字符集不小心没有改动,导致界面乱码,由于是rac环境和单实例的不太一样

1、查询当前的字符集

SQL> select userenv('language') from dual;

USERENV('LANGUAGE')
--------------------------------------------------------------------------------
AMERICAN_AMERICA.WE8ISO8859P1

sql> alter system set cluster_database=false scope=spfile sid='jscn1';

红色部分对于单实例的是不要加的,对于rac来说必须加上,不然会报

ORA-12720: operation requires database is in EXCLUSIVE mode


2、停止数据库(rac1和rac2都要停止)

SQL> shutdown immediate;
Database closed.
Database dismounted.
ORACLE instance shut down.


3、启动数据库(只在rac1上面操作)

SQL> startup nomount;
ORACLE instance started.

Total System Global Area 1577058304 bytes
Fixed Size                  2084264 bytes
Variable Size             436208216 bytes
Database Buffers         1124073472 bytes
Redo Buffers               14692352 bytes
SQL> Alter database mount exclusive;

Database altered.

SQL> Alter system enable restricted session;

System altered.

SQL> ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;

System altered.
SQL> Alter database open;

Database altered.

4、修改字符集
SQL> ALTER DATABASE character set INTERNAL_USE zhs16gbk;
sql> alter system set cluster_database=true scope=spfile sid='jscn1';


5、验证(两个节点都要测)

Database altered.
SQL> SHUTDOWN IMMEDIATE;
Database closed.
Database dismounted.
ORACLE instance shut down.
SQL> startup;
ORACLE instance started.

Total System Global Area 1577058304 bytes
Fixed Size                  2084264 bytes
Variable Size             436208216 bytes
Database Buffers         1124073472 bytes
Redo Buffers               14692352 bytes
Database mounted.
Database opened.
SQL> select userenv('language') from dual;

USERENV('LANGUAGE')
--------------------------------------------------------------------------------
AMERICAN_AMERICA.ZHS16GBK


6、启动rac2,验证rac2的字符集(废话,公用一个数据库,当然一样了)


你可能感兴趣的:(oracle,sql,数据库,database,System,character)