const { Sequelize } = require('sequelize'); const path = require('path'); // 환경 변수 설정 const env = process.env.NODE_ENV || 'development'; const envPath = path.resolve(process.cwd(), `.env.${env}`); // 환경별 .env 파일 로드 require('dotenv').config({ path: envPath }); const sequelize = new Sequelize( process.env.DB_NAME, process.env.DB_USER, process.env.DB_PASSWORD, { host: process.env.DB_HOST, port: process.env.DB_PORT, dialect: 'mysql', logging: process.env.NODE_ENV === 'development' ? console.log : false, // 개발 환경에서만 로깅 활성화 pool: { max: 5, min: 0, acquire: 30000, idle: 10000 }, define: { charset: 'utf8mb4', collate: 'utf8mb4_unicode_ci', timestamps: true } } ); // 데이터베이스 연결 테스트 const testConnection = async () => { try { await sequelize.authenticate(); console.log('데이터베이스 연결 성공!'); } catch (error) { console.error('데이터베이스 연결 실패:', error); } }; module.exports = { sequelize, testConnection };