问题描述:本地连接服务器oracle数据库时,提示(数据库字符集和客户端字符集(2%)是不同的,字符集转化可能会造成不可预期的后果)
问题原因:问题出在oracle服务端的字符集不支持中文导致。
可以通过:
sselect * from nls_database_parameters; 命令可以查看服务端的使用的字符集。
查询结果中,NLS_CHARACTERSET的值就是字符集
解决步骤如下
1、ssh登录,切换到oracle用户
切换用户命令:su -oracle
之后用sqlplus登录oracle,命令:
sqlplus /nolog
connect /as sysdba
2、更改字符集
首先 sqlplus登录后,关闭oracle数据库
1.shutdown immediate ;
2.startup mount ;
3.alter system enable restricted session ;
4.alter system set JOB_QUEUE_PROCESSES=0;
5.alter system set AQ_TM_PROCESSES=0;
6.alter database open ;
7. alter database character set INTERNAL_USE ZHS16GBK;
8.shutdown immediate ;
9.startup ;
注:第七步报错可修改成:alter database character set INTERNAL_USE ZHS16GBK;