jdk从1.6升级到1.8,访问数据库报ccsid,编码或者语言环境不支持:“cp1386”。ERRCODE=-4220

jdk从1.6升级到1.8,访问数据库报ccsid,编码或者语言环境不支持:“cp1386”。ERRCODE=-4220,第1张

花了很长时间解决这个坑,发现中文回答都太简略,也不是为了拿分,在此分享一下经验,我也是花了很长时间查阅英文资料排除错误,感谢英文开发者回答的详细,希望有个中文回答帮助中文开发者避免掉坑吧。

我的环境jdk1.8 websphere9 db2 10.5

首先检查db2jcc db2jcc4 jar包版本是否和数据库版本匹配。db2jcc的版本号可以用命令看,手机回答这里略,也可以直接解压看meta file版本信息。然后去数据库官方网站查对应版本。

再看jdk1.8和数据库版本是否匹配。数据库版本可以在服务器用命令db2level可以查看。

再看数据库db2codepge是否正确,db2set -all可以查看。我的情况是要求数据库支持

中文这里1386是对的。

最后是服务器参数设置的问题,我使用的是websphere9 。设置步骤去下The following property can be set as a Generic JVM Argument on the application server to bypass the error (in the adminconsole, navigate to Servers >WebSphere application servers >server_name >Java and Process Management >Process Definition >Java Virtual Machine)...

-Ddb2.jc.charsetDecoderEncoder=3

设置完后was服务器重启问题解决。

、新建一个应用服务器,名字是server1

2、配置服务器汉字编码

配置路径:应用程序服务器 >server1 >进程定义 >Java 虚拟机>通用 JVM 参数

参数值:-Djava.awt.headless=true -Dclient.encoding.override=GBK -Ddefault.client.encoding=GBK -Dfile.encoding=GBK -Duser.language=Zh -Duser.region=CN

3、配置服务器日志大小和个数

路径:应用程序服务器 >server1 >进程定义 >Java 虚拟机 >进程日志 >记录和跟踪 >JVM 日志

一般情况可以设置每个文件大小10M,保留10个历史文件。

4、修改线程池大小

路径:应用程序服务器 >server1 >其他属性 >线程池

修改WebContainer 最小50 最大100

5、增加主机别名


欢迎分享,转载请注明来源:夏雨云

原文地址:https://www.xiayuyun.com/zonghe/213913.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2023-04-05
下一篇2023-04-05

发表评论

登录后才能评论

评论列表(0条)

    保存