`

nodejs mysql报Error: Connection lost: The server closed the connection.解决方案

阅读更多

问题详情:

Error: Connection lost: The server closed the connection.
at Protocol.end (/opt/node-v0.10.20-linux-x64/IM/node_modules/mysql/lib/protocol/Protocol.js:73:13)
at Socket.onend (stream.js:79:10)
at Socket.EventEmitter.emit (events.js:117:20)
at _stream_readable.js:920:16
at process._tickCallback (node.js:415:13)

解决方案:

var db_config = {
  host: 'localhost',
    user: 'root',
    password: '',
    database: 'example'
};

var connection;

function handleDisconnect() {
  connection = mysql.createConnection(db_config); // Recreate the connection, since
                                                  // the old one cannot be reused.

  connection.connect(function(err) {              // The server is either down
    if(err) {                                     // or restarting (takes a while sometimes).
      console.log('error when connecting to db:', err);
      setTimeout(handleDisconnect, 2000); // We introduce a delay before attempting to reconnect,
    }                                     // to avoid a hot loop, and to allow our node script to
  });                                     // process asynchronous requests in the meantime.
                                          // If you're also serving http, display a 503 error.
  connection.on('error', function(err) {
    console.log('db error', err);
    if(err.code === 'PROTOCOL_CONNECTION_LOST') { // Connection to the MySQL server is usually
      handleDisconnect();                         // lost due to either server restart, or a
    } else {                                      // connnection idle timeout (the wait_timeout
      throw err;                                  // server variable configures this)
    }
  });
}

handleDisconnect();

 

 

分享到:
评论

相关推荐

    hudson.plugins.nodejs.tools.NodeJSInstaller 版本最高为17.9.0

    用于解决jenkins安装nodeJs插件后不能选择nodejs版本,将该文件上传到服务器,然后 docker cp ./hudson.plugins.nodejs.tools.NodeJSInstaller 容器ID:/var/jenkins_home/updates 然后重启Jenkins

    nodejs npm错误Error:UNKNOWN:unknown error,mkdir 'D:\Develop\nodejs\node_global'at Error

    今天小编就为大家分享一篇关于nodejs npm错误Error:UNKNOWN:unknown error,mkdir 'D:Developnodejsnode_global'at Error,小编觉得内容挺不错的,现在分享给大家,具有很好的参考价值,需要的朋友一起跟随小编来看看...

    nodejs mysql 实现分页的方法

    这两天学习了nodejs mysql 实现分页,很重要,所以,今天添加一点小笔记。 代码如下 var express = require('express'); var router = express.Router(); var settings = require('../settings.js'); var mysql =...

    nodejs npm错误Error:UNKNOWN:unknown error,mkdir ‘D:\Develop\nodejs\node_global’at Error

    错误原因 在设置npm的cache和predix时,因为使用参考其他教程照抄,而没有修改为本机对应路径,本机上并没有这个地址,因此造成了...Error: UNKNOWN: unknown error, mkdir ‘D:\Develop\nodejs\node_global’ at Error

    nodejs 关于mysql模块 连接超时自动断开解决方法

    nodejs 关于mysql模块 连接超时自动断开解决方法,在这块遇到的坑,而且坑了很久才找到的,分享只为求分

    nodejs-10.24.1-1nodesource.x86_64.rpm

    # node -v v10.24.1 # npm -v 6.14.12

    Javascript.NodeJS:从C#调用NodeJS中的Javascript

    Jering.Javascript.NodeJS目录总览Jering.Javascript.NodeJS使您能够调用JavaScript中 ,从C#。 借助此功能,您可以使用C#项目中的javascript库和脚本。 您可以使用此库来替代最近淘汰的 。 替换了INodeService的...

    Node.js 安装及环境配置指南

    nodejs安装及环境配置:Node.js 安装及环境配置指南; nodejs安装及环境配置:Node.js 安装及环境配置指南; nodejs安装及环境配置:Node.js 安装及环境配置指南; nodejs安装及环境配置:Node.js 安装及环境配置...

    基于vue+nodejs+mysql的学生社团管理系统

    后端:nodejs+express 数据库:mysql (2)运行 ①安装好npm、node ②将数据库文件organization.sql导入myql数据库 ③用vscode打开项目 ④进入server文件夹: 安装依赖:npm install 启动:node server.js ⑤进入...

    nodejs-mysql-utils:nodejs mysql连接池

    2.导入数据,项目根目录下面有个nodejs.sql 建立好数据库, 将conf/conf.js改为你数据库的配置 3. npm install (下载依赖库) 4. 进入bin/ 运行www.js (运行项目,默认端口3000) node www.js 5.打开浏览器访问 //...

    nodejs mysql mvc

    res.status(500).send('Server Error'); } }); ``` 创建视图模板: 在`views`目录下创建`users.ejs`文件: ```ejs <!DOCTYPE html> <title>Users 用户列表 (let user of users) { %> <li><%= user....

    nodeJS中express框架和mysql简单的连接demo

    这个“nodeJS中express框架和mysql简单的连接demo”项目,旨在演示如何将两者结合,实现在Web应用中与数据库进行交互,包括向数据库插入数据和查询数据。 首先,你需要确保已经安装了以下Node.js相关的依赖库: 1. ...

    post-nodejs-mysql:关于 NodeJs 和 MySQL 的 Post 存储库

    更改app.js文件中的值,导入你在数据库中更改的remote.sql的数据库: app.use( connection(mysql,{ host: 'localhost', user: 'root', password : '123456', port : 3306, //port mysql database:'api' },'request'...

    nodejs_mysql.zip

    "nodejs_mysql.zip"这个压缩包很可能包含了一个或多个用于在Node.js中操作MySQL的模块和示例代码。 首先,我们要了解如何在Node.js中安装和使用MySQL库。最常用的库是`mysql2`,它比原始的`mysql`库提供了更多的...

    nodejs连接mysql实例

    ### Node.js 连接 MySQL 实例详解 在本篇文章中,我们将深入探讨如何使用 Node.js 框架连接并操作 MySQL 数据库。Node.js 是一个基于 Chrome V8 引擎的 JavaScript 运行环境,它使得开发人员能够在服务器端运行 ...

    nodejs封装好的mysql数据库模块,带mysql连接池以及百万测试数据

    综上所述,这个Node.js模块提供了完整的MySQL数据库操作解决方案,结合连接池和大量测试数据,不仅方便开发者快速构建数据库相关功能,还为性能测试和优化提供了便利。通过深入理解和使用这个模块,可以提升你在Node...

    nodejs.zip

    1.教程 深入浅出Node.js(二):Node.js&NPM的安装与配置-...D:\Program Files\nodejs\; D:\Program Files\less.js-windows-master; C:\Users\Administrator\AppData\Roaming\npm;

    Nodejs MySQL Query Builder:一个小型库,可使用mysql和nodejs构建查询-开源

    这是一个使用felixge的nodejs mysql驱动程序的小型mysql查询生成器。 用法示例:```js var query_builder = require('query_builder'); var dbconn_default = {host:'host',user:'user',pass:'password',...

Global site tag (gtag.js) - Google Analytics