dbConfig.js
// dbConfig.js
require('dotenv').config({ path: '../.env' }); // .env 파일 경로 명시
const mysql = require('mysql2');
const pool = mysql.createPool({
host: process.env.DB_HOST,
user: process.env.DB_USER,
password: process.env.DB_PASS,
database: process.env.DB_NAME,
port: process.env.DB_PORT,
waitForConnections: true
});
module.exports = pool.promise();
models/db.js
const pool = require('../config/dbConfig');
const getMySQLConnection = () => pool;
const executeQuery = async (query, params) => {
const connection = getMySQLConnection();
try {
const [results] = await connection.execute(query, params);
return results;
} catch (err) {
console.error('Database query error:', err);
throw err;
}
};
module.exports = {
getMySQLConnection,
executeQuery
};
.env 파일
DB_HOST=
DB_USER=
DB_PASS=
DB_NAME=
DB_PORT=
연결 테스트
testDbConnection.js
require('dotenv').config();
const db = require('./dbConfig');
console.log('DB_HOST:', process.env.DB_HOST);
console.log('DB_USER:', process.env.DB_USER);
console.log('DB_PASS:', process.env.DB_PASS);
console.log('DB_NAME:', process.env.DB_NAME);
console.log('DB_PORT:', process.env.DB_PORT);
async function testConnection() {
try {
const [rows] = await db.query('SELECT 1 + 1 AS solution');
console.log('Connection successful:', rows[0].solution);
} catch (error) {
console.error('Database connection failed:', error);
}
}
testConnection();

2가 나오면 정상적으로 연결 확인