亚洲激情专区-91九色丨porny丨老师-久久久久久久女国产乱让韩-国产精品午夜小视频观看

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

Node.js中使用MySQL時出現connect ECONNREFUSED 127.0.0.1:3306報錯如何解決

發布時間:2021-07-21 10:19:49 來源:億速云 閱讀:1019 作者:Leah 欄目:web開發

Node.js中使用MySQL時出現connect ECONNREFUSED 127.0.0.1:3306報錯如何解決,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。

import Sequelize from 'sequelize';
let sequelize = new Sequelize('database', 'username', 'password', {
 host: 'localhost',
 port: 3306,
 dialect: 'mysql',
 pool: {
  max: 5,
  min: 0,
  idle: 10000
 }
});
// ...后面還有一堆懶得貼了

運行一下

SequelizeConnectionRefusedError: connect ECONNREFUSED 127.0.0.1:3306

什么鬼,為什么會出現這個錯誤呢?我明明設置的是 localhost,為什么會變成 127.0.0.1?

解決問題

照例先谷歌,確實發現了很多人也遇到了這個問題,解決方法大概有這么幾種:

     1、你丫以為不用裝 MySQL 就能跑了么?快去裝數據庫!

     2、你數據庫運行了么你?趕緊 /etc/init.d/mysqld start 運行起來

     3、端口寫錯了

     4、你是不是開啟了 skip-networking 這個選項?Remove it !

看到這里,我反應過來了,因為我的數據庫不涉及到遠程訪問,只要使用 Unix socket 通信就夠了,于是就啟用了 skip-networking 讓 MySQL 不監聽指定端口。

先科普一下 skip-networking 是什么

Do not listen for TCP/IP connections at all. All interaction with mysqld must be made using named pipes or shared memory (on Windows) or Unix socket files (on Unix). This option is highly recommended for systems where only local clients are permitted.

翻譯一下就是:

不要監聽 TCP/IP 連接。所有與 mysqld 的交互必須使用命名管道或共享內存(在 Windows 上)或 Unix socket 文件(在 Unix 上)。強烈建議對只允許本地客戶端的系統使用此選項。

來源

但是為了安全性,我并不想把這個選擇給移除,難道只好忍痛不用 ORM 了嗎?

因為看了文檔,mysql 這個連接庫是可以使用 socketPath 這個屬性指定 Unix 套接字文件,但是 Sequelize.js 沒發現有關屬性。

最后只好發 issue,不久就有 dalao 回答說可以用 dialectOptions 設置 mysql 的屬性。

下面是測試成功的代碼:

import Sequelize from 'sequelize';
let sequelize = new Sequelize('database', 'username', 'password', {
 host: 'localhost',
 port: 3306,
 dialect: 'mysql',
 dialectOptions: {
  socketPath: '/tmp/mysql.sock' // 指定套接字文件路徑
 }
 pool: {
  max: 5,
  min: 0,
  idle: 10000
 }
});

看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

梧州市| 普宁市| 南汇区| 辽宁省| 万山特区| 甘孜县| 共和县| 得荣县| 建湖县| 大冶市| 招远市| 英吉沙县| 当雄县| 陆川县| 安平县| 灵丘县| 岳阳市| 织金县| 宁河县| 巫溪县| 吉隆县| 汉沽区| 湘阴县| 皮山县| 清徐县| 丰原市| 尼木县| 柘城县| 霍山县| 钦州市| 安吉县| 章丘市| 三河市| 西昌市| 杭锦后旗| 郧西县| 广宗县| 会同县| 嘉善县| 曲阜市| 怀安县|