<p><br /></p>
<pre class="brush:php;toolbar:false;">const Sequelize = require("sequelize");
require("dotenv").config();
const 연속화 = 새로운 연속화(
process.env.DB_NAME,
프로세스.env.DB_USER,
process.env.DB_PASSWORD,
{
호스트: "localhost",
방언: "mysql",
포트: 3306,
방언옵션: {
소켓 경로: "/tmp/mysql.sock",
},
}
);
module.exports = 후속작;</pre>
<p>저는 코딩 부트캠프에 있고 그룹 프로젝트를 진행하고 있는데 버그를 만났습니다</p>
<p><code>connect ENOENT /tmp/mysql.sock</code></p>
<p>강사가 이 코드는 Mac 사용자용이고 저는 Windows를 사용하고 있다고 말했습니다.
Windows에서 실행할 때는 이 코드를 무시하고 Mac에서 실행할 때는 실행하는 조건문을 작성하는 방법이 있나요?
온라인으로 검색했는데 아무것도 발견되지 않았습니다. 그래서 로컬에서 주석을 달아야 했고, 그것이 작동하는 동안 더 나은 방법이 있어야 했습니다.
일반적으로 사람들이 이 문제를 해결하는 방법은 코드가 여러 환경(예: Mac, Windows 또는 호스팅 공급자)에서 실행되어야 하는 경우 MySQL 연결 설정을 코드에 추가하지 않고 구성에 추가하는 것입니다. 파일에서. 따라서 이 부분을
.env
구성에 포함하세요.그러나 Unix 소켓을 사용하지 않고도 Mac에서 MySQL에 연결할 수도 있습니다.