mysql econnreset_node使用knex连接mysql,每个小时大概率出现:read ECONNRESET?

mysql econnreset_node使用knex连接mysql,每个小时大概率出现:read ECONNRESET?我有一个node程序每小时查询一次本地数据库马上再查询一次内网数据库,仅在查询内网数据库时出现readECONNRESET。使用npm库knex+mysql2连接数据库,knex配置如下(有使用连接池)require(‘knex’)({client:’mysql2′,connection:{host:’127.0.0.1′,user:’your_database_user’,pass…

大家好,又见面了,我是你们的朋友全栈君。

我有一个node程序每小时查询一次本地数据库马上再查询一次内网数据库,仅在查询内网数据库时出现read ECONNRESET。

使用npm库knex+mysql2连接数据库,knex配置如下(有使用连接池)

require(‘knex’)({

client: ‘mysql2’,

connection: {

host : ‘127.0.0.1’,

user : ‘your_database_user’,

password : ‘your_database_password’,

database : ‘myapp_test’

}

pool: {

min: 5,

max: 1000

},

acquireConnectionTimeout: 60000,

asyncStackTraces: false, // 捕获堆栈跟踪,正式环境不要开启,会消耗性能

migrations: {

tableName: ‘knex_migrations’ // 记录版本控制的表用哪个

},

log: {

warn (message) {

console.log(‘[knex warn]’, message)

},

error (message) {

console.log(‘[knex error]’, message)

},

deprecate (message) {

console.log(‘[knex deprecate]’, message)

},

debug (message) {

console.log(‘[knex debug]’, message)

}

}

})

mysql的show variables like ‘wait_timeout’;是

e2f735c6e4b7da4cc6c354d7928af4e2.png

即8小时。

根据这篇回答:https://stackoverflow.com/a/2…

应该不会出现read ECONNRESET才对啊,mysql关闭无用连接时间是8小时,而我每小时查询一次数据库,都会大概率出现这问题,何况我还用了连接池,knex应该是用了mysql2的连接池吧?mysql2的连接池不是会自动维护这些连接吗?

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请联系我们举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/150172.html原文链接:https://javaforall.net

(0)
上一篇 2022年6月17日 下午11:17
下一篇 2022年6月17日 下午11:17


相关推荐

  • 深度|常见IT人才外包存在的问题及解决建议

    深度|常见IT人才外包存在的问题及解决建议何谓“IT人才外包”IT人才外包,是指企业根据需要将某一项或几项项目开发中所涉及的工作外包出去,交由其他企业安排程序员驻点开发。IT人才外包也叫程序员外包、程序员外派。在IT人才外包中,外包公司提供程序员之后,就不再对程序员进行指挥。用工单位在生产经营上,对派遣员工拥有和正式员工一样完整的管理、指挥权力,但是每个程序员的工资、社保等费用由外包公司。IT人才外包的好处与存在的问题1人才外包的好处1、…

    2022年5月19日
    56
  • k8s(十)基本存储[通俗易懂]

    k8s(十)基本存储[通俗易懂]文章目录概述EmptyDirHostPathNFSk8s的数据存储概述在前面已经提到,容器的生命周期可能很短,会被频繁的创建和销毁。那么容器在销毁的时候,保存在容器中的数据也会被清除。这种结果对用户来说,在某些情况下是不乐意看到的。为了持久化保存容器中的数据,kubernetes引入了Volume的概念。Volume是Pod中能够被多个容器访问的共享目录,它被定义在Pod上,然后被一个Pod里面的多个容器挂载到具体的文件目录下,kubernetes通过Volume实现同一个Pod中不同容器之间的数据

    2022年8月9日
    4
  • 二叉树的最大深度和最小深度浅析

    二叉树的最大深度和最小深度浅析

    2021年9月15日
    54
  • wrk服务器性能测试

    wrk服务器性能测试转载地址 http zjumty iteye com blog 测试先行是软件系统质量保证的有效手段 在单元测试方面 我们有非常成熟的 xUnit 方案 在集成测试方面 我们 selenium 等自动化方案 在性能测试方面也有很多成熟的工具 比如 LoadRunner Jmeter 等 但是很多工具都是给专门的性能测试人员使用的 功能虽然强大 但是安装和操

    2026年3月17日
    2
  • Java项目开发文档(javaweb实战项目)

    项目开发过程中为了增加程序的可读性和程序的健壮性,方便后期程序的调试和维护,所以需要在开发过程中统一技术规范,一般会在项目初期确定好相关文档作为这一统一的规范。不同公司会对文档做不同要求,划不同的分类,但一般来说(或者拿自己的经验说)大致可以分为需求文档、接口文档、流程图(可以单独作为一份文件可以作为附件附在文档中)、变更文件等。一、需求文档在项目启动之后,项目的目标已经明确了,那么就要

    2022年4月15日
    136
  • Vue之vnode创建

    Vue之vnode创建前言上一篇文章中分析了 html gt vnode 主要的处理过程 实际上主要是 parse generate 解析 template 构建 render 函数的过程 实际上 vnode 的创建是在 render 执行过程中触发的 本文主要分析 render 调用过程以及该过程 vnode 的创建 具体分析在 render 构建和调用那篇文章中 就提及 render 的调用实际上是 Watcher 实例对象创建触发的 主要的处

    2026年3月17日
    2

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号