1、功能说明
1.1 MySQL服务器正常启动,其它服务器连接数据库失败
1.2 使用Navicat for MySQL工具连接数据库报错Can't connect to MySQL server on'localhost' (10055)
1.3 应用程序频繁的连接访问数据库,而系统会为每个连接动态分配一个端口,大并发的情况下就会导致动态端口占用完的情况
1.4 端口重用问题,每个动态分配的端口号在连接关闭后,需要等待一段时间才能重新使用。
1.5 netstat -ano > c:1.txt在cmd中运行这个指令,查看当前共多少端口被占用,一般超过5W时容易出问题

2、操作说明
2.1 方法一
2.1.1 改变可用动态端口范围
在修改之前我们可以CMD命令
netstat -n | find /C /I "established"
查看当前占用多少连接数
https://www.cnblogs.com/Alex80/p/15723903.html
2.1.2 显示默认到底是多少:
netsh int ipv4 show dynamicport tcp
netsh int ipv4 show dynamicport udp
netsh int ipv6 show dynamicport tcp
netsh int ipv6 show dynamicport udp
2.1.3 可以通过以下命令来配置:
netsh int
例如:
netsh int ipv4 set dynamicport tcp start=9000 num=56000
netsh int ipv4 set dynamicport udp start=9000 num=56000
netsh int ipv6 set dynamicport tcp start=9000 num=56000
netsh int ipv6 set dynamicport udp start=9000 num=56000
备注:start指起始端口,最小值是1025,num指的是范围,最小值是255,最大值即start + num < 65535
2.2 方法二
2.2.1 设置连接数,端口,复用时间
可以通过修改或添加如下注册表字段来配置:
有时候可能需要通过注册表配置动态分配端口的最大值:
在HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/Tcpip/Parameters里加上如下的键值:
ValueName: MaxUserPort
ValueType: DWORD
Valuedata: 65534
ValidRange: 9000-65534 (decimal)
Default:0x2328 (9000 decimal)
最大TCP连接数 TcpNumConnections
HKEY_LOCAL_MACHINE/System/CurrentControlSet/Services/Tcpip/Parameters]
TcpNumConnections = 0x00fffffe (十进制 16777214)
在HKEY_LOCAL_MACHINE/SYSTEM/CurrentControlSet/Services/Tcpip/Parameters加上
键值:TcpTimedWaitDelay
数值类型:REG_DWORD - 时间(以秒为单位)
有效范围:30-300(十进制)
默认值:0x78(十进制 120)
描述:此参数确定连接在关闭时保持 TIME_WAIT 状态的时长。只要连接处于 TIME_WAIT 状态,便不能重新使用套接字对。
为了复用的快一些:可以设置为最小值:30
原文链接:https://blog.csdn.net/langren697/article/details/38422055
https://blog.csdn.net/weixin_30853329/article/details/98007292
https://blog.csdn.net/zhangjunli/article/details/87914000