본문 바로가기

Node.Js

[Node.js] MySQl Sequelize 설정

반응형

sequelize 설치

안정적인 5.22버전 설치

npm install sequelize@5.22

 

mysql2 설치

npm install mysql2

 

[model]-[db.js]

var Sequelize = require('sequelize');
var sequelize;

//sequelize 연결 정보
sequelize = new Sequelize("test111", "root", "1q2w3e4r", {
    host: "localhost",
    port: 3306, //3306은 약속이다
    dialect: "mysql",
    timezone: "+09:00", //한국 시간
    define: {
        charset: "utf8",
        collate: "utf8_general_ci",
        timestamps: true, //자동으로 날짜 데이터 생성
        freezeTableName: true
    }
})

var db = {};

db.sequelize = sequelize;
db.Sequelize = Sequelize;

module.exports = db;

 

app.js

const db = require("./model/db")
db.sequelize.sync({focus: false}) //db와 서버가 연결됨 false면 업데이트 해줌, true는 서버가 실행될때마다 초기화됨
 
const express = require('express');
const helmet = require("helmet");
const app = express();
const ejs = require('ejs');
const db = require("./model/db")

//html, css 같은것 보여줄때
app.set('view engine', 'ejs'); //view engine은 ejs를 사용한다
app.set('views', './views');
app.use('/public', express.static(__dirname + '/public')); //public 폴더를 참조해라는 의미

app.use(helmet());

//postman setting
app.use(express.json());
app.use(express.urlencoded());

const mainRouter = require('./router/mainRouter')
app.use('/', mainRouter)

//3000번 포트를 사용 할 것이다
app.listen(3000, function (req, res) {
    db.sequelize.sync({focus: false}) //db와 서버가 연결됨 false면 업데이트 해줌, true는 서버가 실행될때마다 초기화됨
    console.log("port 3000 서버가 실행 되고 있음")
})

 

실행하면 error가 뜬다

Unhandled rejection SequelizeConnectionRefusedError: connect ECONNREFUSED 127.0.0.1:3306

cd /usr/local/etc
vi my.cnf

port=3306

추가

후에 맥북 재시작하고

brew services start mysql

되고 있는지 확인하기

sudo lsof -P -i :3306
반응형