本机的数据库,db2cmd命令行可以连上各数据库,但是netstat -an发现本机50000端口并无侦听服务,会是什么原因?
程序连接数据库的时候提示如下:
->错误信息:sqlstate=08001
【IBM】【CLI Driver】sql30081n 检测到通讯错误。正在使用的通讯协议:“TCP/IP”. ”正在使用的通信 API:"SOCKETS""。检测到错误的位置
:“127.0.0.1”。检测到错误的通信功能:“connect”。特定于协议的错误代码:“10061”、“*”和“*”。SQLSTATE=08001
进行了如下检查未发现问题:
1、执行db2 get dbm cfg
(SVCENAME) = db2c_DB2
2、执行db2set
DB2PROCESSORS=0,1
DB2INSTPROF=C:\ProgramData\IBM\DB2\DB2COPY1
DB2COMM=TCPIP
3、windows的services文件中
db2c_DB2 50000/tcp
数据库卸了重装后,问题依旧。
------解决方案--------------------------------------------------------
什么系统?
有无防火墙?如有,检查一下设置
------解决方案--------------------------------------------------------
你是本机走的,估计是通过 sock , 如果需要通过网络连接,你需要所端口起出来。检查一下你的配置。
------解决方案--------------------------------------------------------
你系统的问题吧,50000估计是开了,但是你没监测到,要不你的db2cmd也连不上的
------解决方案--------------------------------------------------------
你确定你的db2cmd连接的是你的数据库吗?
正常不启动服务,db2cmd肯定是能够连接的,应为还有远程服务嘛,db2cmd成功后,你的db2 connect好使不,这个才真正连50000的
------解决方案--------------------------------------------------------
检查一下服务中是否有DB2的进程
------解决方案--------------------------------------------------------
是不是安装的时候设置端口不对?
------解决方案--------------------------------------------------------
比如你的数据库配置是远程的 比如你的数据库配置的是namepipe的都不会监听本地50000端口
看看配置助手里面的编目把