DB2 客户机远程连接报57017错误 排查以及解决办法

前提

在win11新安装客户机,配置远程连接DB2,按照以下步骤执行:

1、对远程节点进行编目

CATALOG  TCPIP   NODE  local_node_name(设置一个节点名)REMOTE  IP(服务端ip)SERVER  service_name|posr_number (服务名称或者端口号)

2、对远程节点进行数据库编目

CATALOG DATABASE remote_db_name(服务端数据库名) AS local_db_name(自定义数据库别名) AT NODE local_node_name(第一步设置的节点名)

3、刷新,查看数据库目录

TERMINATE
LIST DB DIRECTORY

到此都没有问题
4、连接远程数据库服务

CONNECT TO local_db_name(第二步设置的数据库别名) USER userid (用户)USING password (密码)

问题

出现以下错误

SQL0332N  不支持从源代码页 "1114" 到目标代码页 "UNKNOWN" 的字符转换。
SQLSTATE=57017

排查原因

提示是代码页冲突,无法转换,考虑需要更换客户机的字符集与服务器保持一致。
1、查看客户机字符集代码

db2set.exe -all   //win11

在这里插入图片描述
客户机字符集编码为1114

2、查看服务端字符集代码

SELECT NAME,value FROM SYSIBMADM.DBCFG WHERE NAME LIKE '%code%';

在这里插入图片描述

服务端的为1392

解决办法

1、设置客户机的字符集代码,刷新生效(注意:windows需要用管理员身份运行db2cmd,以及执行的目录)

D:\db2\IBM\SQLLIB\BIN>db2set db2codepage=1392

D:\db2\IBM\SQLLIB\BIN> db2 terminate
DB20000I  TERMINATE 命令成功完成。

D:\db2\IBM\SQLLIB\BIN>db2set.exe -all
[e] DB2PATH=D:\db2\IBM\SQLLIB
[i] DB2INSTPROF=C:\ProgramData\IBM\DB2\DB2COPY1
[i] DB2CODEPAGE=1392
[g] DB2_EXTSECURITY=NO
[g] DB2_COMMON_APP_DATA_PATH=C:\ProgramData
[g] DB2SYSTEM=FRANKE
[g] DB2PATH=D:\db2\IBM\SQLLIB
[g] DB2INSTDEF=DB2

修改完成,重新连接就可以啦~
记录一下,一起学习db2!

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值