네로개발일기

개발자 네로의 개발 일기, 자바를 좋아합니다 !

'2022/04/15'에 해당되는 글 1건


반응형

Express Example

적당한 위치에 애플리케이션 디렉터리를 생성하고 npm init을 실행한다. 일단 기본 설정으로 package.json을 생성한다.

$ mkdir express-mysql-example
$ cd express-mysql-example
$ npm init --yes

mysql 모듈을 설치한다.

$ npm install mysql

package.json을 아래와 같이 수정한다.

{
  "name": "express-mysql-example",
  "version": "0.0.1",
  "description": "",
  "main": "index.js",
  "scripts": {
    "start": "node index"
  },
  "dependencies": {
    "mysql": "^2.18.1"
  }
}

Node.js와 MySQL 연동

index.js를 아래와 같이 변경한다. 

createConnection 메서드의 인자로 전달되는 객체에 자신의 데이터베이스 정보(유저명과 패스워드 등)를 입력해야 한다. 

const mysql = require('mysql');
const connection = mysql.createConnection({
    host	: 'localhost',
    user	: 'jy.jeon',
    password: 'password',
    database: 'my_db'
});

connection.connect();

connection.query('SELECT * FROM Users', (error, rows, fields) => {
    if (error) throw error;
    console.log('User info is: ', rows);
});

connection.end();

콘솔에 아래와 같은 결과가 출력되면 성공이다.

User info is:  [ RowDataPacket { id: 'nero', password: '1234' } ]

만약 ‘ER_NOT_SUPPORTED_AUTH_MODE’ 에러가 발생하면 아래 sql을 실행하고 다시 접속해보자.

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'password';
FLUSH PRIVILEGES;

 

npm start로 실행한다.

728x90
반응형
blog image

Written by ner.o

개발자 네로의 개발 일기, 자바를 좋아합니다 !