사용이 가능한 모든 프로그램은 DB가 따라 붙기 마련이죠.

node.js도 실제 유용하게 사용하려면 DB 연동은 필수 인데요.

소켓통신을 하며 필요한 정보를 내어주기 위한 node.js와 mysql 연결에 대해서 정리해봐요.



 var mysql = require('mysql');

먼저 다음과 같이 mysql을 불러옵니다.

mysql 모듈은 기본적으로 설치되어 있어서 express나 socket.io 처럼 별도로 설치해줄 필요는 없어요.



 

 var connection = mysql.createConnection({

   host    :'호스트',

   port : 3306,

   user : 'mysql 접속 아이디',

   password : 'mysql 접속 비밀번호',

   database:'mysql 접속 데이터베이스'

  });

연결정보를 작성해줍니다.



 

 connection.connect();

연결정보로 mysql 연결을 시도합니다.



 

 connection.query('쿼리문',function(err, rows, cols){

   if(err) throw err;

   for(idx in rows){

    socket.emit('answer',rows[idx].name);

   }

   

  });

원하는 쿼리문을 작성하여 다음과 같이 실행합니다.

이때 결과가 rows에 담기는데 rows에는 json으로된 데이터가 담겨 있음으로 for(idx in rows) 처럼 하여 json 데이터를 분해합니다.

분해한 데이터에서 원하는 값을 socket.emit에 담아 보냅니다.



 

 connection.end();

작업이 완료된 연결은 mysql 연결을 끊어줍니다.




어렵지 않게 연결할수 있네요.


+ Recent posts