<p><br /></p>
<pre class="brush:php;toolbar:false;">const Sequelize = require("sequelize");
require("dotenv").config();
const sequelize = new Sequelize(
プロセス.env.DB_NAME、
プロセス.env.DB_USER、
プロセス.env.DB_PASSWORD、
{
ホスト: "ローカルホスト"、
方言: "mysql"、
ポート: 3306、
方言オプション: {
ソケットパス: "/tmp/mysql.sock",
}、
}
);
module.exports = sequelize;</pre>
<p>コーディング ブートキャンプに参加しており、グループ プロジェクトに取り組んでいますが、バグに遭遇しました</p>
<p><code>connect ENOENT /tmp/mysql.sock</code></p>
<p>インストラクターは、このコードは Mac ユーザー向けだと言いましたが、私は Windows を使用しています。
Windows で実行している場合はこのコードを無視し、Mac で実行している場合は実行する条件文を作成する方法はありますか?
オンラインで検索しましたが、何も見つかりませんでした。そのため、ローカルでコメントアウトする必要がありましたが、それは機能しましたが、より良い方法が必要でした。 </p>
通常、この問題を解決する方法は、コードを Mac、Windows、ホスティング プロバイダーなどの複数の環境で実行する必要がある場合、コードに MySQL 接続設定を追加するのではなく、構成ファイルに追加することです。したがって、これを
.env
構成の一部にします。そうは言っても、Unix ソケットを使用せずに Mac 上の MySQL に接続することもできます。