分类: Oracle
2009-10-10 11:42:22
今天好几台数据库服务器出现了各种问题,忙的晕头转向,这会总算有个头绪,以往碰到的问题解决了就完了,不便于积累,特此开始写ORACLE各种问题的解决方法。
首先是将要作为行政审批生产环境的字符集装错了,前一段备份数据库也出现此问题,但当时硬性的给把字符集改了,不过总是有隐患的,所以这台直接用DBCA重建了一个数据库。
关于上次变更字符集的方法罗列如下:
将数据库字符集由WE8ISO8859P1改为ZHS16GBK
查看服务器端字符集
SQL > select * from V$NLS_PARAMETERS
修改:
$sqlplus /nolog
SQL>conn / as sysdba;
若此时数据库服务器已启动,则先执行 SHUTDOWN IMMEDIATE 命
令关闭数据库服务器,然后执行以下命令:
SQL>shutdown immediate;
SQL>STARTUP MOUNT;
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 ZHS16GBK;
*
ERROR at line 1:
ORA-12721: operation cannot execute when other sessions are active
若出现上面的错误,使用下面的办法进行修改,使用INTERNAL_USE可以跳过超集的检查:
SQL>ALTER DATABASE CHARACTER SET INTERNAL_USE ZHS16GBK;
SQL>SHUTDOWN IMMEDIATE;
SQL>STARTUP