当前位置: 移动技术网 > IT编程>数据库>Mysql > Node 使用nodemon连接mysql长时间不操作总是断开连接

Node 使用nodemon连接mysql长时间不操作总是断开连接

2020年08月01日  | 移动技术网IT编程  | 我要评论
很长时间没有使用node了,这两天在赶个人博客然后后台采用的是node+mysql来编写接口这个时候就遇到了如同标题所说的问题那么解决方案如下,我们只需要在断开之后重新连接即可const mysql = require("mysql");var dbConfig = require('./db.config');function handleError(err) { if (err) { // 如果是连接断开,自动重新连接 if (err.code === 'PROTOC

很长时间没有使用node了,这两天在赶个人博客
然后后台采用的是node+mysql来编写接口
这个时候就遇到了如同标题所说的问题

那么解决方案如下,
我们只需要在断开之后重新连接即可

const mysql = require("mysql");
var dbConfig = require('./db.config');

function handleError(err) {
  if (err) {
    // 如果是连接断开,自动重新连接
    if (err.code === 'PROTOCOL_CONNECTION_LOST') {
      con.connect();
    } else {
      console.error(err.stack || err);
    }
  }
}

const con = mysql.createConnection(dbConfig);
con.connect(handleError);
con.on('error', handleError);
let curd = sql => {
  return new Promise((response, reject) => {
    con.query(sql, (err, data) => {
      if (err) {
        return reject(err);
      }
      return response(data);
    });
  });
};
// con.end()
module.exports = {
  curd
}

我们直接加一个handleError这样一个函数即可,把这个函数我们放在 connect 以及 on这个事件当中
原理其实就是当遇到了错误之后,重启mysql服务。
希望可以帮助大家解决这个问题

本文地址:https://blog.csdn.net/clli_Chain/article/details/108181897

如您对本文有疑问或者有任何想说的,请 点击进行留言回复,万千网友为您解惑!

相关文章:

验证码:
移动技术网