遭遇了配置MYSQL和node.js的困擾
P粉489081732
P粉489081732 2023-08-15 10:55:24
0
1
413
<p><br /></p> <pre class="brush:php;toolbar:false;">const Sequelize = require("sequelize"); require("dotenv").config(); const sequelize = new Sequelize( process.env.DB_NAME, process.env.DB_USER, process.env.DB_PASSWORD, { host: "localhost", dialect: "mysql", port: 3306, dialectOptions: { socketPath: "/tmp/mysql.sock", }, } ); module.exports = sequelize;</pre> <p>我在一個程式設計訓練營裡,我們正在進行一個小組項目,我遇到了一個錯誤</p> <p><code>connect ENOENT /tmp/mysql.sock</code></p> <p>我的講師告訴我們這段程式碼是給Mac用戶用的,而我正在使用Windows。 有沒有辦法寫一個條件語句,如果在Windows上運行時忽略這段程式碼,而在Mac上運行時運行它? 我在網路上搜尋了一下,沒有找到什麼結果。所以我只能在本地將它註解掉,雖然這樣可以工作,但肯定有更好的方法吧。 </p><p><br /></p>
P粉489081732
P粉489081732

全部回覆(1)
P粉190883225

通常,人們解決這個問題的方式是,如果程式碼需要在多個環境(如Mac、Windows或託管提供者)上運行,他們不會將MySQL連接設定添加到程式碼中,而是將其添加到設定檔中。所以,將其作為你的.env配置的一部分。

話雖如此,你也可以在Mac上連接MySQL而不使用Unix套接字。

熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板