达梦数据库登陆时报网络通讯异常的排查方法

在大家刚刚接触达梦数据库的时候,经常会碰到的一个问题就是网络通讯异常。
跟据使用的连接工具不同,问题具体可能表现为网络通讯异常或者 socket 连接失败。
Mana ger 下的报错
图1 管理工具下的报错

在这里插入图片描述
图2 DISQL下的报错

一、达梦数据库的服务没有启动

1)linux 服务器执行 ps -ef | grep dmserver,查看进程是否存在;
2)windows 服务器,使用达梦服务查看器(dmdbms\tool\dmservice.exe 查看达梦数据库实例服务)检查服务是否启动,或者用 windows 自带的服务查看器(cmd运行 services.msc),查看达梦数据库实例服务状态;

二、远程访问被防火墙拦截

如果服务在本地连接正常,但是使用远程连接时提示网络异常,一般情况下是防火墙引发的问题。此时需要检查防火墙相关设置,一般生产系统是不允许直接关闭防火墙的,那么就需要在数据库服务器上开启对应端口远程访问的权限(默认为 5236)。
此处已 Linux 下为例:
直接编辑/etc/sysconfig/iptables 文件
1.编辑/etc/sysconfig/iptables 文件:vi /etc/sysconfig/iptables
加入内容并保存:-A RH-Firewall-1-INPUT -m state–state NEW -m tcp -p tcp --dport 5236 -j ACCEPT
2.重启服务:/etc/init.d/iptables restart
3.查看端口是否开放:/sbin/iptables -L -n

三、端口号不对

达梦数据库默认端口号为 5236,使用达梦管理工具或 jdbc 等其他接口访问数据库,若未单独指定端口号,则默认使用 5236 端口;
端口号相关设置默认在 dmdbms/data/DAMENG 目录下的 dm.ini 文件中搜索PORT_NUM,确认端口号后,再使用正确的端口号访问;
参数说明:PORT_NUM 服务器通讯端口号, 有效值范围(1024~65534),默认值 5236

四、达到最大会话数限制,无法建立新的连接

1)先确定是否达到最大会话数限制,在 dmdbms/log 目录下,查看当月日志,例如,本月(8 月)的日志名为:dm_DMSERVER_201808.log 若日志中有 reach the maxsession limit 的提示,则说明达到最大会话数限制。
2)确认是由此原因导致无法访问数据库,则需要进行以下两个方面的排查
a. 应用连接池配置,连接池最大会话数要进行合理的设置
b. dm.ini 文件中,MAX_SESSIONS 参数,默认为 100,可根据实际需要调整
参数说明:MAX_SESSIONS 系统允许同时连接的最大数,同时还受到 LICENSE 的限制,取二者中较小的值,有效值范围(1~65000)
3)若应用连接池设置的最大连接数设置为 500,且 license 为正式企业版、测试企业版,则需要修改 dm.ini 中 MAX_SESSION 参数>500,在数据库中执行 SP_SET_PARA_VALUE(2,‘MAX_SESSIONS’,600);
4)参数修改完成后,需要重启数据库服务生效;

  • 1
    点赞
  • 23
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值