为提高效率,提问时请提供以下信息,问题描述清晰可优先响应。
【DM版本】:8.1.3.62_pack17
【操作系统】:windwos
【CPU】:x86_64
【问题描述】*:DM管理工具无法连接数据库
1、当前网络和disql情况
客户端能ping通服务器
客户端能telnet通达梦数据库服务
客户端disql能连接达梦数据库
客户端DBeaver能连接达梦数据库
2、DM管理工具连接数据库报错,错误号:6001。如下图
3、具体日志如下:
我认为的关键的日志,Caused by: java.net.SocketException: Connection reset
[ERROR] 登录服务器失败
dm.jdbc.driver.DMException: 网络通信异常
at dm.jdbc.driver.DBError.throwException(SourceFile:778) ~[?:?]
at dm.jdbc.a.a.a(SourceFile:254) ~[?:?]
at dm.jdbc.a.a.e(SourceFile:636) ~[?:?]
at dm.jdbc.a.a.d(SourceFile:617) ~[?:?]
at dm.jdbc.driver.DmdbConnection.openConnection(SourceFile:688) ~[?:?]
at dm.jdbc.internal.conf.EP.connect(SourceFile:143) ~[?:?]
at dm.jdbc.internal.conf.EPGroup$EPSelector.select(SourceFile:486) ~[?:?]
at dm.jdbc.internal.conf.EPGroup.connect(SourceFile:329) ~[?:?]
at dm.jdbc.driver.DmDriver.do_connect(SourceFile:164) ~[?:?]
at dm.jdbc.driver.DmDriver.connect(SourceFile:450) ~[?:?]
at java.sql.DriverManager.getConnection(DriverManager.java:664) ~[?:1.8.0_382]
at java.sql.DriverManager.getConnection(DriverManager.java:208) ~[?:1.8.0_382]
at com.dameng.common.persistence.connection.DriverManagerDataSource.getConnectionFromDriverManager(DriverManagerDataSource.java:165) ~[?:?]
at com.dameng.common.persistence.connection.DriverManagerDataSource.getConnectionFromDriverManager(DriverManagerDataSource.java:142) ~[?:?]
at com.dameng.common.persistence.connection.DriverManagerDataSource.getConnectionFromDriverManager(DriverManagerDataSource.java:116) ~[?:?]
at com.dameng.common.persistence.connection.DriverManagerDataSource.getConnection(DriverManagerDataSource.java:106) ~[?:?]
at com.dameng.common.persistence.connection.DefaultConnectionManager.getConnection(DefaultConnectionManager.java:39) ~[?:?]
at com.dameng.common.persistence.session.Session.newConnection(Session.java:548) ~[?:?]
at com.dameng.common.persistence.session.Session.connect(Session.java:524) ~[?:?]
at com.dameng.tool.dialog.ConnectDialog.service(ConnectDialog.java:321) ~[?:?]
at com.dameng.common.gui.dialog.AbstractTitleAreaDialog$1.execute(AbstractTitleAreaDialog.java:298) ~[?:?]
at com.dameng.common.event.AbstractNotifiable.run(SourceFile:61) ~[?:?]
at com.dameng.common.gui.busy.BusyExecutor$1.run(BusyExecutor.java:114) ~[?:?]
Caused by: java.net.SocketException: Connection reset
at java.net.SocketInputStream.read(SocketInputStream.java:210) ~[?:1.8.0_382]
at java.net.SocketInputStream.read(SocketInputStream.java:141) ~[?:1.8.0_382]
at dm.jdbc.util.buffer.ByteArrayNode.load(SourceFile:129) ~[?:?]
at dm.jdbc.util.buffer.Buffer.load(SourceFile:365) ~[?:?]
at dm.jdbc.a.c.a(SourceFile:79) ~[?:?]
at dm.jdbc.a.a.e(SourceFile:334) ~[?:?]
at dm.jdbc.a.a.a(SourceFile:215) ~[?:?]
... 21 more
4、尝试限制DM管理工具只能通过IPv4连接数据库,报错依旧。
5、求排查思路。
客户端是否可以telnet通15236端口
您这个数据库环境应该是zyj服务器吧
用iptables -F清理一下防火墙规则再试试
1.查看下端口是否通了
2.密码是不是带有特殊字符@
检查是否设置ip限制
现场环境是否有ip冲突问题?