我的编程空间,编程开发者的网络收藏夹
学习永远不晚

Mysql连接无效(invalid connection)问题及解决

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

Mysql连接无效(invalid connection)问题及解决

Mysql连接无效invalid connection

一般连接数据库的代码库都有实现连接池,如golang语言database/sql库,其中SetConnMaxLifetime(d time.Duration)是用来设置连接池里每条连接关闭的时间,当d <= 0时,连接池里的连接永久重用,即永远都在连接池里,拿来就用,不管此连接是否真的有效(这里有问题,下面讲)。

当d > 0时,到了时间d才会关闭连接,把连接移出连接池,但这并不是时间一到就关闭,因为当连接还在使用时会等连接完成之后,等下一个清理连接周期(周期为d)时会关闭连接,移出连接池。

Mysql为了防止空闲连接过多,超过了参数mysql_connection之后会拒绝新连接,mysql会自动关闭空闭连接超过wait_timeout参数的时间,会关闭使用中超过interactive_timeout参数的连接。

由于mysql会自动关闭超时连接,所以database/sql的SetConnMaxLifetime()不能设置为永久有效,要不然连接已经被mysql关闭了,但还是拿着失效的连接使用就会报invalid connection。

解决的方案

SetConnMaxLifetime()设置的时间小于wait_timeout就行,一般建议wait_timeout/2。

Mysql远程连接不生效

记录一下,一般这种情况都是设置 mysql 表中对应 root 用户的 Host 从 localhost 改为 %,但是怎么弄都不生效,没办法只能看看 mysql 配置文件 mysqld.cnf

里面找到了一项内容如下图:

Mysql连接无效(invalid connection)问题及解决

把上面箭头所指处注释后一试,还真是这个,不知道这个什么时候设置的,太无语了。 

总结

以上为个人经验,希望能给大家一个参考,也希望大家多多支持我们。

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

Mysql连接无效(invalid connection)问题及解决

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

Mysql连接无效(invalid connection)问题及解决

目录mysql连接无效invalid connection解决的方案Mysql远程连接不生效总结Mysql连接无效invalid connection一般连接数据库的代码库都有实现连接池,如golang语言database/sql库,其中
2023-02-16

Mysql连接无效(invalidconnection)问题及解决

这篇文章主要介绍了Mysql连接无效(invalidconnection)问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
2023-02-16

VUEdivclick无效的问题及解决

这篇文章主要介绍了VUEdivclick无效的解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
2023-01-28

mysql连接错误2013的问题及解决

这篇文章主要介绍了mysql连接错误2013的问题及解决方案,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
2023-05-20

mysql设置默认值无效问题及解决

目录场景原因解决总结场景数据库mysql框架hibernate原因根据hibernate打印出的sql信息可以发现,如果实体类字段为null,则仍会insert这个字段为null,而mysql设置的默认值生效的前提是,当我们inse
2023-10-19

Xshell7远程连接失败(connection failed)的问题解决

目录讲在前面问题呈现原因具体操作(step by step)1.检查是否安装ssh,打开一个cmd,看看输入ssh后得到的结果2.安装ssh3.打开SSH服务4.检查linux上sshd有没有打开5.再回Xshell上试试效果如何结语讲在前
2022-08-16

MobaXterm连接出现 Network error: Connection timed out 问题解决

MobaXterm连接出现 Network error: Connection timed out: 接前文:CentOS安装, 点此查看文章,安装之后的SSH连接: 解决思路如下: 1、检查虚拟机端是否安装ssh 一般情况是可以自动安装
2023-08-21

Navicat连接MySQL时出现的连接失败问题及解决

目录一、安装mysql的注意事项二、Navicat连接mysql方法一方法二总结一、安装MySQL的注意事项官网下载安装,选择zip包,解压后不用安装只用配置好环境变量Path并在解python压后的文件夹里新建文本文档my.ini,编辑
2023-05-12

MySQL SSL 连接常见问题及解决方法

MySQL SSL 连接常见问题及解决方法概述:Secure Socket Layer(SSL)是一种加密传输协议,用于保护数据在网络上的传输安全。MySQL 支持通过 SSL 连接数据库服务器,以增强数据的保密性和完整性。然而,在使用 M
2023-10-22

解决无法远程连接MySQL服务的问题

① 设置MySQL中root用户的权限: [root@nginx-dev etc]# mysql -uroot -pRoot@123mysql> use mysql;mysql> GRANT ALL PRIVILEGES ON *.* TO
2023-08-30

超出MySQL最大连接数问题及解决

目录超出mysql最大连接数问题查看最大连接数修改最大连接数MySQL最大连接数,TimeOut配置MySQL连接数配置Mysql的连接线程池Mysql TimeOut配置总结超出MySQL最大连接数问题如果遇到MySQ连接数超出最大限制
2023-05-15

mysql8连接不上问题及解决

目录mysql8连接不上1、先打开数据库根目录,将data文件夹下的文件备份2、清空data文件夹中的文件3、初始化数据库总结mysql8连接不上mysql启动不了:本地计算机上的MySQL服务启动后停止1、先打开数据库根目录,将data
mysql8连接不上问题及解决
2024-08-19

jdbc连接失效问题如何解决

要解决JDBC连接失效问题,可以尝试以下几个方法:检查数据库服务器是否正常运行:确保数据库服务器正常运行并且可以接收连接。可以通过尝试使用其他工具(如数据库管理工具)连接数据库来确认。检查网络连接:确保网络连接正常,包括数据库服务器和应用程
2023-10-24

解决Navicat for mysql 无法连接mysql8.X服务器问题

原因:由于msql 8.X的密码加密规则跟5.X不一样,所以修改服务端加密规则解决此问题。 步骤: ALTER USER "root"@"localhost" IDENTIFIED BY "Qaz123#" PASSWORD EXPIRE NEVER;#修改加
2014-07-29

编程热搜

目录