ERP俱乐部
ERP爱好者、ERP从业者互相交流、互相学习的乐园;我们的愿景是成为全球一流的中文ERP(Enterprise Resource Planning)交流平台
网站首页 论坛首页 搜索 用户列表 FAQ 注册 登录  
ERP俱乐部 -> 数据库专栏 -> Oracle数据库 -> oracle数据库乱码处理已经解决
  oracle数据库乱码处理已经解决
帖子发起人: weilm   发起时间: 2012-08-07 03:34 下午   回复数: 0
? 上一主题 下一主题 ?
楼主
  2012-08-07, 03:34 下午
weilm 离线,最后访问时间: 2012/12/31 15:25:15 weilm

发帖数前150位
男

80级
等级: 80级
注册: 2012年4月17日
区域: 广东深圳
经验: 1,183
积分: 1,163
精华: 0
发贴: 158
排名: 28
Site Registered Users
oracle数据库乱码处理已经解决
 
1.修改远程linux机器的配置
  在vi /etc/sysconfig/i18n文件里的配置如下:
LANG="zh_CN.GBK"
SUPPORTED="zh_CN.UTF-8:zh_CN:zh:zh_CN.GBK"
SYSFONT="latarcyrheb-sun16"

2.修改稿oracle的环境变量:用oracle用户进入系统。在.bash_profile文件最后加上以下内容
NLS_LANG="SIMPLIFIED Chinese"_CHINA.ZHS16GBK
export NLS_LANG
3.重启数据库服务器,启动数据库监听,启动数据库
4.用sys用户登录数据库,执行以下语句:
update props$ set value$='ZHS16GBK' where name='NLS_CHARACTERSET'
重启数据库监听。
到这儿,数据库数据已能正常显示,但以前的数据还是乱码,需要重新导入。数据库会出现另一个问题 ora-06552.
5.以下是ora-06552的解决方法:
SHUTDOWN IMMEDIATE;
STARTUP MOUNT;
ALTER SYSTEM ENABLE RESTRICTED SESSION;
ALTER SYSTEM SET JOB_QUEUE_PROCESSES=0;
ALTER SYSTEM SET AQ_TM_PROCESSES=0;
ALTER DATABASE OPEN;
 
 
COL VALUE NEW_VALUE CH***T
SELECT VALUE FROM NLS_DATABASE_PARAMETERS WHERE PARAMETER='NLS_CHARACTERSET';
COL VALUE NEW_VALUE NCH***T
SELECT VALUE FROM NLS_DATABASE_PARAMETERS WHERE PARAMETER='NLS_NCHAR_CHARACTERSET';
 
--INTERNAL_USE是没有写在文档中的参数,用以强制完成字符集一致化
ALTER DATABASE CHARACTER SET INTERNAL_USE &CH***T;
ALTER DATABASE NATIONAL CHARACTER SET INTERNAL_USE &NCH***T;
 
 
SHUTDOWN IMMEDIATE;
STARTUP;
-- 再次启动数据库一遍
SHUTDOWN IMMEDIATE;
STARTUP;
按照上面的步骤,一步一步来,一步不要少,完成以后就ok了

世界上最远的距离是知与行的距离
分享按钮 IP 地址: 已登录   来自: 已登录    返回顶部
 第 1 页 总共 1 页 [共有 1 条记录]
ERP俱乐部 -> 数据库专栏 -> Oracle数据库 -> oracle数据库乱码处理已经解决
(C)Copyright 2005-2020 www.erpclub.org All Rights Reserved.
Tel:+86-755-26444630
Email:webmaster@yok.com.cn