上海腾科教育达梦数据库培训干货分享DM7中网络通讯异常的排查方法

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

Mana ger下的报错

Disql下的报错

当遇到此类报错的时候,我们该如何排查问题呢,本文就将给大家介绍几种可能的错误原因以及排查办法。

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

扫描二维码关注公众号,回复: 11909871 查看本文章

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/iptablesrestart

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,且li cense为正式企业版、测试企业版,则需要修改dm.ini中MAX_SESSION参数>500

在数据库中执行SP_SET_PARA_VALUE(2,'MAX_SESSIONS',600);

4)参数修改完成后,需要重启数据库服务生效;

猜你喜欢

转载自blog.csdn.net/qq_42726883/article/details/108399248