簡體   English   中英

Node js(Express js)Mysql讀取ECONNRESET錯誤

[英]Node js (Express js) Mysql read ECONNRESET error

var express = require('express');
var mysql = require('mysql');
var connection = module.exports = mysql.createConnection({
  host: 'myhost.com',
  port:'3307',
  user: 'username',
  password: 'password',
  database: 'mydatabase'
});

connection.connect(function(err) {
  if (err){
    throw err;
  }
  else
  console.log('You are now connected...');
});

有時,當我嘗試連接到數據庫時,出現讀取ECONNRESET錯誤。 請幫忙。 我嘗試了很多事情,但似乎無濟於事。

您可以在以下答案中找到解決方案: https : //stackoverflow.com/a/22906189/1790397

  1. MySQL確實會修剪空閑連接。 有一個MySQL變量“ wait_timeout”,用於設置超時前的秒數,默認值為8小時。 我們可以將默認值設置為更大。 使用顯示變量,例如“ wait_timeout”; 查看您的超時設置並設置wait_timeout = 28800; 改變它。
  2. 根據此問題,node-mysql在此類斷開連接后不會修剪池連接。 模塊開發人員建議使用心跳使連接保持活動狀態,例如調用SELECT 1; 每隔一段時間。 他們還建議使用節點池模塊及其idleTimeoutMillis選項來自動修剪空閑連接。

您可以使用connection變量.timeout函數:

connection.timeout = 0;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM