IT/nodejs
nodejs mysql 연결
열심히해볼까
2020. 6. 19. 11:28
반응형
최초 접근 시 mysql connection을 설정해서 확인을 해보자
경로 : app.js
var createError = require('http-errors');
var express = require('express');
var path = require('path');
var cookieParser = require('cookie-parser');
var logger = require('morgan');
var mysql = require('mysql'); //추가
var indexRouter = require('./routes/index');
var usersRouter = require('./routes/users');
var app = express();
// view engine setup
app.set('views', path.join(__dirname, 'views'));
app.set('view engine', 'jade');
mysql 모듈을 호출해보자
mysql 패키지 모듈이 없다면
mysql 모듈 npm 이용해서 모듈을 설치하자
npm i --save mysql
경로 : package.json
mysql 연결 후 확인하자^^
파일경로 : app.js
var createError = require('http-errors');
var express = require('express');
var path = require('path');
var cookieParser = require('cookie-parser');
var logger = require('morgan');
var mysql = require('mysql'); //mysql 모듈 호출
var indexRouter = require('./routes/index');
var usersRouter = require('./routes/users');
var app = express();
const dbInfo = { //db정보 객체로 설정
host:'xxx.xxx.xxx.xxxx'
,user:'xxxx'
,password:'xxxx'
,database:'xxxx'
}
mysql.createConnection(dbInfo).connect((err)=>{ //db 커넥션 연결 확인
if(err) {
console.log("mysql connect error "+err);
} else {
console.log("mysql connect success ");
}
})
=============아래내용생략=================
콘솔 연결화면 확인
DB연결은 데이터 접근 시 다른 모듈에서 빈번하게 사용하므로 모듈로 만들어보자!
config 폴더를 생성해 보자
경로 : /config/db.js
const mysql = require('mysql');
const dbInfo = {
host:'xxx.xxx.xxx.xxx'
,user:'xxxx'
,password:'xxxx'
,database:'xxxx'
}
let dbcon = {
init:function() {
return mysql.createConnection(dbInfo);
},
conn:function(con) {
con.connect(function(err){
if(err) {
console.log("mysql connection error :"+err);
setTimeout(init, 2000);
} else {
console.log("mysql connection sucessfully");
}
})
}
}
module.exports = dbcon; //모듈 등록
생성한 db 모듈을 실행해 보자
파일경로 : app.js
var createError = require('http-errors');
var express = require('express');
var path = require('path');
var cookieParser = require('cookie-parser');
var logger = require('morgan');
var db = require('./config/db'); //db 연결 모듈 호출
var indexRouter = require('./routes/index');
var usersRouter = require('./routes/users');
var app = express();
var conn = db.init(); //db 모듈 커넥션 실행
db.conn(conn); //db 연결 확인
이전에 작성한 mysql 연결 삭제
------------아래 내용생략-----------------
반응형