시퀄라이즈 패키지를 설치합니다.
npm install sequelize sequelize-cli
프로젝트 root 경로에서 구조가 잡혀있는 경로가 있으면 이동합니다. (필자는 app/ 디렉토리 내부에 구조가 잡혀있어서 app안에 세팅)
cd app/
시퀄라이즈 초기화로 기본파일을 생성합니다.
sequelize init
config/config.json
{
"development": {
"username": "root",
"password": "",
"database": "my_db",
"host": "127.0.0.1",
"dialect": "mysql",
},
"test": {
"username": "root",
"password": "",
"database": "test_dev",
"host": "127.0.0.1",
"dialect": "mysql",
},
"production": {
"username": "root",
"password": null,
"database": "database_production",
"host": "127.0.0.1",
"dialect": "mysql"
}
}
comfig/db.config.js
작성
module.exports = {
HOST: "localhost",
PORT: "3306",
USER: "root",
PASSWORD: "",
DB: "my_db",
dialect: "mysql",
pool: {
max: 5,
min: 0,
acquire: 30000,
idle: 10000
}
};
models/index.js
세팅
const dbConfig = require("../config/db.config.js");
const Sequelize = require("sequelize");
const sequelize = new Sequelize(dbConfig.DB, dbConfig.USER, dbConfig.PASSWORD, {
host: dbConfig.HOST,
port: dbConfig.PORT,
dialect: dbConfig.dialect,
operatorsAliases: false,
pool: {
max: dbConfig.pool.max,
min: dbConfig.pool.min,
acquire: dbConfig.pool.acquire,
idle: dbConfig.pool.idle
}
});
const db = {};
db.Sequelize = Sequelize;
db.sequelize = sequelize;
// routes 사용
db.Member = require("./member.js")(sequelize, Sequelize);
module.exports = db;
DB 테이블 (스키마) 생성합니다.
sequelize db:create --env development
migrate를 수행합니다.
npx sequelize-cli db:migrate