본문 바로가기
Study/Node.js

[Node] Node.js MySQL 연동 및 로그인 디비 생성

by M개발자 2021. 8. 31.
반응형

1. MySQL 설치

npm install -g mysql

PS D:\Node.js> npm install -g mysql
+ mysql@2.18.1
added 11 packages from 15 contributors in 1.439s

1.5 계정 추가

참고 블로그

2. db, table 생성

db 이름 : mw_db
table 이름 : user

CREATE DATABASE mw_db;
CREATE TABLE USER (
    ID INT PRIMARY KEY AUTO_INCREMENT,
    NAME VARCHAR(10) NOT NULL,
    EMAIL VARCHAR(30) NOT NULL UNIQUE,
    PASSWORD VARCHAR(200) NOT NULL
);

디비 생성 및 테이블 생성, 조회 A to Z

는 아니고 한 C까지?

1. CMD 창에서 MySQL 접속

C:\Users\min>mysql -u root -p
Enter password: ****
Welcome to the MySQL monitor.  Commands end with ; or \g.

2. database 생성 및 접속

create database | db 생성
use db이름 | db 접속

mysql> CREATE DATABASE mw_db;
Query OK, 1 row affected (0.01 sec)
mysql> use mw_db;
Database changed

3. table 생성 및 확인

create table | table 생성
describe table이름 | table 확인

mysql> CREATE TABLE USER (
    ->     ID INT PRIMARY KEY AUTO_INCREMENT,
    ->     NAME VARCHAR(10) NOT NULL,
    ->     EMAIL VARCHAR(30) NOT NULL UNIQUE,
    ->     PASSWORD VARCHAR(200) NOT NULL
    -> );
Query OK, 0 rows affected (0.07 sec)

mysql> describe user;
+----------+--------------+------+-----+---------+----------------+
| Field    | Type         | Null | Key | Default | Extra          |
+----------+--------------+------+-----+---------+----------------+
| ID       | int(11)      | NO   | PRI | NULL    | auto_increment |
| NAME     | varchar(10)  | NO   |     | NULL    |                |
| EMAIL    | varchar(30)  | NO   | UNI | NULL    |                |
| PASSWORD | varchar(200) | NO   |     | NULL    |                |
+----------+--------------+------+-----+---------+----------------+
4 rows in set (0.02 sec)

+ 테이블 설계는 자신의 구상으로 짜셔야합니다. 제 프로젝트에서는 ID를 자동생성으로 했기 때문에 type이 int입니다.

3. mysql.js

const mysql = require('mysql');

const connection = mysql.createConnection({
    host: 'localhost',
    user: 'root',
    password: 'pw', //mysql 설치시 설정했던 비번
    database: 'mw_db' // db 이름
});

connection.connect((err) => {
    if (err) {
        console.log(err);
        connection.end();
        throw err;
    } else {
        console.log("DB 접속 성공");
    }
});


module.exports = connection;


PS D:\Node.js\app> node mysql
DB 접속 성공

테이블 비우기

TRUNCATE table_name;
맨날 까먹어서 기록하기.


참고
https://bangc.tistory.com/15

더보기

노드 마이에스큐엘 연동 로그인 디비 생성

node mysql login db database

반응형

댓글