设为首页 收藏本站
查看: 3460|回复: 0

[经验分享] DB2 Connect 常见问题

[复制链接]

尚未签到

发表于 2016-11-13 10:56:44 | 显示全部楼层 |阅读模式
DB2 Connect 常见问题
本主题列示使用 DB2 Connect™ 时遇到的常见的连接问题症状。在每种情况下,都为您提供:
消息号和与该消息相关联的返回码(或特定于协议的返回码)的组合。每个消息和返回码组合都具有独立的标题,这些标题是先按消息号,再按返回码来排序的。
症状,通常采用样本消息列表的格式。
建议的解决方案,指示错误的可能原因。在某些情况下,可能会提供多种建议的解决方案。
SQL0965 或 SQL0969
症状
可能会从 DB2® IBM® i 版、DB2 z/OS® 版和 DB2 服务器 VM 和 VSE 版发出消息 SQL0965 和 SQL0969 及大量不同的返回码。
当您遇到任何其中一个消息时,应该在发出该消息的数据库服务器产品的文档中查找原始 SQL 代码。

解决方案
不能转换从 IBM 大型机数据库接收的 SQL 代码。根据错误代码来更正该问题,然后重新提交失败的命令。
SQL5043N
症状
未能成功启动对一个或多个通信协议的支持。但是,已成功启动了核心数据库管理器功能。
DB2 Connect 服务器上可能未启动 TCP/IP 协议。先前可能已经有成功的客户机连接。

如果 diaglevel = 4,那么 db2diag 日志文件可能包含类似的条目,例如:
   2001-05-30-14.09.55.321092   Instance:svtdbm5   Node:000
      PID:10296(db2tcpcm)   Appid:none
      common_communication  sqlcctcpconnmgr_child   Probe:46
      DIA3205E 在 TCP/IP services 文件中配置的且 TCP/IP
   服务器支持所需的套接字地址“30090”正被另一进程使用。
解决方案
此警告是一种症状,它表示充当远程客户机的服务器的 DB2 Connect 在处理一个或多个客户机通信协议时遇到问题。这些协议可以是 TCP/IP 和其他协议,消息通常会指出为 DB2 Connect 定义的某个通信协议未正确配置。
原因通常是未定义 DB2COMM 概要文件变量,或者该变量未正确定义。该问题通常是 DB2COMM 变量与数据库管理器配置中定义的名称(例如,svcename 或 nname)之间不匹配的结果。

一种可能的情况是先前有成功的连接,然后得到 SQL5043 错误消息,但未更改任何配置。使用 TCP/IP 协议时,当远程系统因为某些原因而异常终止了连接,就可能会发生这种情况。发生这种情况时,客户机上可能仍然显示连接存在,通过发出下面所显示的命令,就可复原连接,而无须进一步的操作。

与 DB2 Connect 服务器相连接的某个客户机很有可能在 TCP/IP 端口上仍有句柄。在与 DB2 Connect 服务器相连接的每一台客户机上,输入下列命令:
   db2 terminate      db2stop
SQL30020
症状
SQL30020N 执行失败,原因是“分布式协议错误”,该错误将影响后续命令和 SQL 语句的成功执行。
解决方案
遇到此错误时,应该与服务中心联系。与服务中心联系之前请先运行 db2support 命令。
SQL30060
症状
SQL30060N "<authorization-ID>" 没有执行操作 "<operation>" 的特权。
解决方案
连接至 DB2 z/OS 版时,未正确更新通信数据库(CDB)表。
SQL30061
症状
连接至错误的 IBM 大型机数据库服务器位置 - 找不到目标数据库。
解决方案
可能在 DCS 目录条目中指定了错误的服务器数据库名称。当发生此情况时,将对应用程序返回 SQLCODE -30061。
检查 DB2 节点、数据库和 DCS 目录条目。DCS 目录条目中的目标数据库名称字段必须与基于平台的数据库名称相对应。例如,对于 DB2 z/OS 版数据库,要使用的名称应该与“引导数据集”(BSDS)“LOCATION=locname”字段中的名称相同,当启动了“分布式数据设施”(DDF)时,在 DSNL004I 消息(LOCATION=location)中也提供了该名称。

TCP/IP 节点的正确命令是:
   db2 catalog tcpip node <node_name> remote <host_name_or_address>
                server <port_no_or_service_name>
   db2 catalog dcs database <local_name> as <real_db_name>
   db2 catalog database <local_name> as <alias> at <node node_name>
                        authentication server
要连接至数据库,您应该发出:
   db2 connect to <alias> user <user_name> using <password>
带有返回码 79 的 SQL30081N
症状
   SQL30081N  已检测到通信错误。
      所使用的通信协议:“TCP/IP”。
   所使用的通信 API:“SOCKETS”。
位置   检测到错误的位置:“”。  错误的
      通信功能:
   “连接”。特定于协议的错误代码:“79”、“*”和“*”。
      SQLSTATE=08001
解决方案
当远程客户机未能与 DB2 Connect 服务器连接时,就可能发生此错误。从 DB2 Connect 服务器连接至 IBM 大型机数据库服务器时,也可能发生此错误。
在 DB2 Connect 服务器上,DB2COMM 概要文件变量可能设置得不正确。检查此变量。例如,当在 AIX® 上运行 DB2 企业服务器版时,命令 db2set db2comm=tcpip 应该出现在 sqllib/db2profile 中。
IBM 数据服务器客户机 中指定的 TCP/IP 服务名称和端口号可能与 DB2 Connect 服务器中指定的不匹配。在以上两种机器中验证 TCP/IP services 文件中的各个条目。
检查在 DB2 Connect 服务器上是否启动了 DB2。使用以下命令将“数据库管理器配置”diaglevel 设置为 4:
      db2 update dbm cfg using diaglevel 4
在停止并重新启动 DB2 后,查看 db2diag 日志文件,以便检查是否已经启动了 DB2 TCP/IP 通信。您应该看到与下列信息类似的输出:
      2001-02-03-12.41.04.861119   Instance:svtdbm2   Node:00
      PID:86496(db2sysc)   Appid:none
      common_communication  sqlcctcp_start_listen   Probe:80
      DIA3000I “TCPIP”协议支持已成功启动。
带有特定于协议的错误代码 10032 的 SQL30081N
症状
   SQL30081N  已检测到通信错误。
      所使用的通信协议:“TCP/IP”。
   所使用的通信 API:“SOCKETS”。
位置   检测到错误的位置:“9.21.85.159”。  检测到
       错误的通信功能:
      “发送”。特定于协议的错误代码:“10032”、"*", "*".
      SQLSTATE=08001
解决方案
当试图与 TCP/IP 通信已经发生故障的机器断开连接时,可能会接收到此错误消息。用 TCP/IP 子系统更正该问题。
在大多数机器上,只须对机器重新启动 TCP/IP 协议就可以更正该问题。有时可能需要重新启动整个机器。

连接(CONNECT)期间出现 SQL30082 RC=24
症状
SQLCODE -30082 提供的用户名或密码不正确。
解决方案
确保在 CONNECT 语句上提供了正确的密码(必要时)。未提供要发送到目标服务器数据库的密码。必须将密码从 IBM 数据服务器客户机发送到目标服务器数据库中。在某些平台上,例如 AIX,仅当密码是在 CONNECT 语句中提供的时候,才能获得该密码。
概念主题

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-299646-1-1.html 上篇帖子: db2常用命令(一) 下篇帖子: DB2 实用操作指令总结
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表