久久r热视频,国产午夜精品一区二区三区视频,亚洲精品自拍偷拍,欧美日韩精品二区

您的位置:首頁技術(shù)文章
文章詳情頁

Nodejs 連接 mysql時報Error: Cannot enqueue Query after fatal error錯誤的處理辦法

瀏覽:194日期:2022-06-10 09:08:12
目錄
  • Nodejs 連接 mysql時報Error: Cannot enqueue Query after fatal error錯誤的處理辦法
    • 一、nodejs連接mysql?
    • 二、Nodejs 連接 mysql時報錯 Error: Cannot enqueue Query after fatal error
      • 1.原配置參數(shù)
      • 2.新配置參數(shù)
  • 補充:Node.js連接MySQL數(shù)據(jù)庫報錯
    • 解決方法:

    Nodejs 連接 mysql時報Error: Cannot enqueue Query after fatal error錯誤的處理辦法

    一、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)建連接connexports.db = handleDisconnection();

    二、Nodejs 連接 mysql時報錯 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};

    補充:Node.js連接MySQL數(shù)據(jù)庫報錯

    解決Node.js第一次連接MySQL數(shù)據(jù)庫時出現(xiàn)[SELECT ERROR] - ER_NOT_SUPPORTED_AUTH_MODE: Client does not support authentication protocol requested by server; consider upgrading MySQL client的錯誤。

    報錯原因:mysql8.0以上的加密方式,Node.js還不支持。

    解決方法:

    進入mysql(cmd管理員模式)

    1.第一步:啟動mysql服務(wù),可以通過net start mysql命令實現(xiàn)

    2.第二步:在命令行輸入:mysql -u用戶名 -p密碼,回車;
    -h表示服務(wù)器名,localhost表示本地,-hlocalhost 可不輸入;
    -u為數(shù)據(jù)庫用戶名,root是mysql默認用戶名;
    -p為密碼,如果設(shè)置了密碼,可直接在-p后鏈接輸入,如:-p123456,用戶沒有設(shè)置密碼,顯示Enter password時,直接回車即可。)
    例子:mysql -hlocalhost -uroot -p123456,包含了密碼會直接進入

    3.進入后是這樣的:

    4.輸入MySQL語句

    先輸入alter user 'root'@'localhost' identified with mysql_native_password by '123456';

    出現(xiàn):

    再輸入flush privileges;

    出現(xiàn):

    問題解決了,再次運行就不會報錯了

    參考文章:

    https://www.cnblogs.com/jing-tian/p/11688073.html

    到此這篇關(guān)于Nodejs 連接 mysql時報Error: Cannot enqueue Query after fatal error錯誤的處理辦法的文章就介紹到這了,更多相關(guān)Nodejs 連接 mysql報錯內(nèi)容請搜索以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持!

    標(biāo)簽: JavaScript
    主站蜘蛛池模板: 崇明县| 光泽县| 监利县| 临西县| 阳高县| 龙岩市| 顺平县| 沧州市| 镇康县| 肥西县| 红河县| 湖北省| 岳池县| 渑池县| 奉节县| 贡觉县| 内丘县| 新建县| 上林县| 曲水县| 蛟河市| 泸西县| 龙海市| 太谷县| 华蓥市| 西华县| 滦平县| 镇赉县| 稻城县| 姜堰市| 邳州市| 霍林郭勒市| 安图县| 凤阳县| 万荣县| 广饶县| 普兰店市| 灵宝市| 革吉县| 德江县| 印江|