Node.js와 mySql 연결해보기

이진아·2021년 1월 6일
0

Node.js

목록 보기
2/6
post-thumbnail
post-custom-banner

회원가입 예제를 통한 node.js에 mysql 연결 하기

1. 우선 mysql 연결하기 위해서

const mysql = require('mysql'); 를 하여

터미널에서 npm i mysql 를 설치.

2. mysql 연결 설정

상수를 만들어서 mysql에 어떤식으로 저장할지를 만든다.

    const pool = mysql.createPool({
        connectionLimit: 10,
        host: 'localhost',
        user: 'root',
        password: '1234',
        database: 'nodestudy',
        debug: false
    });
    
   

connectionLimit : 최대 연결 갯수를 설정
host : 연결할 호스트 이름을 설정
port : 데이터베이스가 사용하는 포트번호를 설정
user : 데이터베이스 사용자 아이디를 설정
password : 데이터베이스 사용자 비밀번호를 설정
database : 데이터베이스 이름을 설정
debug : 데이터베이스 처리 과정을 로그로 남길지 여부를 설정

3. mysql 코드

   create table tb_member(
      mem_idx bigint auto_increment primary key,
      mem_userid varchar(20) unique not null,
      mem_pass varchar(200) not null,
      mem_name varchar(20) not null,
      mem_age int,
      mem_registdate datetime default now()
   );
   

mysql에는 위의 코드처럼 table을 만들어 놓았다.

 pool.getConnection((err, conn) => {
        if(err){
            callback(err, null);
            return;
        }
        console.log('데이터베이스 연결 성공');
        const sql = conn.query('insert into tb_member (mem_userid, mem_pass, mem_name, mem_age) values (?, sha1(?), ?, ?)', [userid, userpw, name, age], (err, result) => {
            conn.release(); // 연결을 해제
            console.log('정상적인 sql 실행!');
            if(err){
                callback(err, null);
                return;
            }
            console.log('가입완료');
            callback(null, result);
        });
    });

위의 코드는 mysql에 있는 tb_member와 연결시키는 코드이다.
코드를 작성후 userid, userpw 등에 내용을 넣어서 sql에 넣을 것인데 이것을 postman을 통하여 하였다.

이처럼 userid, userpw, name, age에 값을 넣어서 post방식으로 send를 보내면

이렇게 연결이 된것을 터미널에서 확인 할 수 있다. 그리고 mysql에 들어가서 값이 들어왔는지 확인을 한다.

값이 잘들어 온것을 확인 할 수 있다.
여기에서 red라는 userid는 암호화된 비밀번호를 가지고 있는 것으로 보인다. 그이유는 red의 userpw에 sha1를 사용했기 때문이다.
sha1은 비밀번호를 암호화 시키는 역할을 한다.

profile
새싹 개발자><
post-custom-banner

0개의 댓글