1、登录oracle所在服务器
2、sqlplus连接数据库
#>sqlplus /nolog --注意/前面有一个空格
#>conn sys/sys as dba
3、执行下面命令修改字符集编码
#>SHUTDOWN IMMEDIATE; --关闭数据库
#>STARTUP MOUNT;--启动数据库
#>ALTER SESSION SET SQL_TRACE=TRUE;
#>ALTER SYSTEM ENABLE RESTRICTED SESSION;
#>ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
#>ALTER SYSTEM SET AQ_TM_PROCESSES=0;
#>ALTER DATABASE OPEN;
#>ALTER DATABASE CHARACTER SET ZHS16GBK;
#>SHUTDOWN IMMEDIATE;
#>STARTUP;
4、修改字符集时可能会报如下错误:
ORA-12712: new character set must be a superset of old character set,意思是新的字符集必须是老的字符集的超集。
解决办法是强制修改字符集:#>ALTER DATABASE character setINTERNAL_USEZHS16GBK;--关键字INTERNAL_USE
5、如果数据库中文乱码则将数据库字符集修改为“ZHS16GBK”即可;建议在安装数据库时就选择好需要使用的字符集。
这篇博客详细介绍了如何在Linux系统中修改Oracle数据库的字符集。首先,通过sqlplus以sys用户身份连接数据库,然后执行一系列命令来关闭、装载和打开数据库,并进行字符集的变更。在更改过程中可能会遇到ORA-12712错误,解决方法是使用INTERNAL_USE关键字强制修改。最后提醒,若出现中文乱码问题,可将字符集设置为'ZHS16GBK',并建议在数据库安装时就设定好合适的字符集。
668

被折叠的 条评论
为什么被折叠?



