Nodejs?連接?mysql時(shí)報(bào)Error:?Cannot?enqueue?Query?after?fatal?error錯(cuò)誤的處理辦法
Nodejs 連接 mysql時(shí)報(bào)Error: Cannot enqueue Query after fatal error錯(cuò)誤的處理辦法
一、nodejs連接mysql?
npm install mysql --save
創(chuàng)建連接代碼 db.js
//導(dǎo)入mysql連接包
const mysql = require('mysql');
let dbconfig ={
host: 'db_host',
user: 'db_user',
password: 'db_pass',
database: 'db_name',
debug: true
};
function handleDisconnection() {
db = mysql.createConnection(dbconfig);
db.connect(function (err) {
if (err) {
console.log('db connect error:' + err.message + "2秒后重連");
setTimeout(handleDisconnection, 2000);
}
});
db.on('error', function (err) {
console.log(err);
if (err.code === 'PROTOCOL_CONNECTION_LOST') {
console.log('db error執(zhí)行重連:' + err.message);
handleDisconnection();
} else {
throw err;
}
});
db.querySync = function(sql) {
return new Promise(function(resolve, reject) {
db.query(sql, function(error, results, fields) {
if(error) reject(error);
else resolve({results, fields})
})
})
};
return db;
}
//創(chuàng)建連接conn
exports.db = handleDisconnection();二、Nodejs 連接 mysql時(shí)報(bào)錯(cuò) Error: Cannot enqueue Query after fatal error
1.原配置參數(shù)
let dbconfig ={
host: 'db_host',
user: 'db_user',
password: 'db_pass',
database: 'db_name',
debug: true
};只要加上useConnectionPooling: true參數(shù)就可以了
2.新配置參數(shù)
let dbconfig ={
host: 'db_host',
user: 'db_user',
password: 'db_pass',
database: 'db_name',
useConnectionPooling: true,
debug: true
};補(bǔ)充:Node.js連接MySQL數(shù)據(jù)庫(kù)報(bào)錯(cuò)
解決Node.js第一次連接MySQL數(shù)據(jù)庫(kù)時(shí)出現(xiàn)[SELECT ERROR] - ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authentication protocol requested by server; consider upgrading MySQL client的錯(cuò)誤。
報(bào)錯(cuò)原因:mysql8.0以上的加密方式,Node.js還不支持。
解決方法:
進(jìn)入mysql(cmd管理員模式)
1.第一步:?jiǎn)?dòng)mysql服務(wù),可以通過(guò)net start mysql命令實(shí)現(xiàn)
2.第二步:在命令行輸入:mysql -u用戶名 -p密碼,回車;
-h表示服務(wù)器名,localhost表示本地,-hlocalhost 可不輸入;
-u為數(shù)據(jù)庫(kù)用戶名,root是mysql默認(rèn)用戶名;
-p為密碼,如果設(shè)置了密碼,可直接在-p后鏈接輸入,如:-p123456,用戶沒(méi)有設(shè)置密碼,顯示Enter password時(shí),直接回車即可。)
例子:mysql -hlocalhost -uroot -p123456,包含了密碼會(huì)直接進(jìn)入
3.進(jìn)入后是這樣的:

4.輸入MySQL語(yǔ)句
先輸入alter user 'root'@'localhost' identified with mysql_native_password by '123456';
出現(xiàn):

再輸入flush privileges;
出現(xiàn):

問(wèn)題解決了,再次運(yùn)行就不會(huì)報(bào)錯(cuò)了
參考文章:
https://blog.csdn.net/weixin_43042683/article/details/106779060
https://www.cnblogs.com/jing-tian/p/11688073.html
到此這篇關(guān)于Nodejs 連接 mysql時(shí)報(bào)Error: Cannot enqueue Query after fatal error錯(cuò)誤的處理辦法的文章就介紹到這了,更多相關(guān)Nodejs 連接 mysql報(bào)錯(cuò)內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
- 使用nodejs連接mySQL寫接口全過(guò)程(增刪改查)
- nodejs+mysql實(shí)現(xiàn)用戶相關(guān)的增刪改查的詳細(xì)操作
- 三分鐘教會(huì)你用nodejs操作mysql數(shù)據(jù)庫(kù)
- NodeJs操作MYSQL方法詳細(xì)介紹
- nodejs中關(guān)于mysql數(shù)據(jù)庫(kù)的操作
- Nodejs中koa2連接mysql的實(shí)現(xiàn)示例
- NodeJs+MySQL實(shí)現(xiàn)注冊(cè)登錄功能
- nodejs連接mysql數(shù)據(jù)庫(kù)及基本知識(shí)點(diǎn)詳解
- nodejs實(shí)現(xiàn)的連接MySQL數(shù)據(jù)庫(kù)功能示例
- Nodejs連接mysql并實(shí)現(xiàn)增、刪、改、查操作的方法詳解
- NodeJS連接MySQL數(shù)據(jù)庫(kù)并進(jìn)行增刪改查操作詳解
相關(guān)文章
詳解npm 配置項(xiàng)registry修改為淘寶鏡像
這篇文章主要介紹了詳解npm 配置項(xiàng)registry修改為淘寶鏡像,小編覺(jué)得挺不錯(cuò)的,現(xiàn)在分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2018-09-09
Windows系統(tǒng)下載、部署Node.js與npm環(huán)境的操作方法
本文介紹在Windows電腦中,下載、安裝并配置Node.js環(huán)境與npm包管理工具的方法,文中通過(guò)圖文結(jié)合的方式講解的非常詳細(xì),對(duì)大家的學(xué)習(xí)或工作有一定的幫助,需要的朋友可以參考下2025-01-01
Node.js?全局變量無(wú)法掛載問(wèn)題解決分析
這篇文章主要為大家介紹了Node.js?全局變量無(wú)法掛載問(wèn)題解決分析,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2023-04-04
Nodejs搭建多進(jìn)程Web服務(wù)器實(shí)現(xiàn)過(guò)程
這篇文章主要為大家介紹了Nodejs搭建多進(jìn)程Web服務(wù)器實(shí)現(xiàn)過(guò)程詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪2022-10-10
使用node.js 制作網(wǎng)站前臺(tái)后臺(tái)
本文給大家介紹實(shí)用node.js 制作網(wǎng)站前臺(tái)和后臺(tái),非常的詳盡,有需要的朋友可以參考下2014-11-11
解決npm?run?serve啟動(dòng)報(bào)錯(cuò)npm?ERR?Missing?script:"serve&q
這篇文章主要給大家介紹了關(guān)于解決npm?run?serve啟動(dòng)報(bào)錯(cuò)npm?ERR?Missing?script:"serve"的相關(guān)資料,這是最近開(kāi)發(fā)中遇到的一個(gè)問(wèn)題,文中通過(guò)圖文將解決辦法介紹的非常詳細(xì),需要的朋友可以參考下2023-01-01
node.js 核心http模塊,起一個(gè)服務(wù)器,返回一個(gè)頁(yè)面的實(shí)例
下面小編就為大家?guī)?lái)一篇node.js 核心http模塊,起一個(gè)服務(wù)器,返回一個(gè)頁(yè)面的實(shí)例。小編覺(jué)得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2017-09-09

