728x90
반응형
본 포스트를 포함한 Sequelize 관련 모든 포스트는 mysql을 기반으로 작성되었으며, mysql이 반드시 설치되어 있어야 합니다.
mysql 및 Workbench는 설치법을 구글링해 보시면, 간단하게 설치하실 수 있습니다.
먼저 mysql과 sequelize을 인스톨한다.
.env 파일을 생성하여 DB정보를 입력한다.
models라는 폴더를 생성하여 그 아래 index.js 파일을 생성한다.
생성한 index.js 파일에 아래와 같이 코딩한다.
var Sequelize = require('sequelize');
var path = require('path');
var fs = require('fs');
var dotenv = require('dotenv');
dotenv.config(); //LOAD CONFIG
//.env 파일에 있는 정보들에 접근
const sequelize = new Sequelize( process.env.DATABASE,
process.env.DB_USER, process.env.DB_PASSWORD,{
host: process.env.DB_HOST,
dialect: 'mysql',
timezone: '+09:00', //한국 시간 셋팅
operatorsAliases: Sequelize.Op,-----
pool: {
max: 5,
min: 0,
idle: 10000
}
});
let db = [];
fs.readdirSync(__dirname)
.filter(file => {
return file.indexOf('.js')&& file !== 'index.js'
})
.forEach(file => {
var model = sequelize.import(path.join(__dirname,
file));
db[model.name] = model;
});
Object.keys(db).forEach(modelName => {
if("associate" in db[modelName]){
db[modelName].associate(db);
}
});
db.sequelize = sequelize;
db.Sequelize = Sequelize;
module.exports = db;
app.js에 아래 소스를 추가한다.
// db 관련
const db = require('./models');
// db 접속
this.dbConnection();
dbConnection(){
// DB authentication
db.sequelize.authenticate()
.then(() => {
//실행 성공
console.log('Connection has been established successfully.');
})
.then(() => {
console.log('DB Sync complete.');
})
.catch(err => {
console.error('Unable to connect to the database:', err);
});
}
cmd창에서 스타트 해보면 정상적으로 DB 접속이 가능한 것을 확인할 수 있다.
출처 : 본 포스트는 패스트캠퍼스의 Node 웹 프로그래밍 올인원 패키지 Online의 박준영 강사님의 강의를 보고 직접 정리한 내용입니다.
728x90
반응형
'Javascript > Node' 카테고리의 다른 글
[node] Sequelize에서의 DB 입력 (0) | 2020.09.07 |
---|---|
[node] Sequelize에서의 모델 작성 (0) | 2020.09.07 |
[node] nunjucks macro (0) | 2020.09.07 |
[node] 404, 500 error handling (0) | 2020.09.07 |
[node] Global View Variable (0) | 2020.09.07 |