Responsive Advertisement

Node.js에서 MySQL 데이터베이스 생성하기

Node.js와 MySQL을 함께 사용하면 강력한 데이터 기반 웹 애플리케이션을 구축할 수 있습니다. MySQL 데이터베이스를 사용하여 데이터를 저장, 관리, 처리하는 다양한 기능을 구현할 수 있으며, Node.js에서 이를 제어하는 방법도 매우 간단합니다. 이 글에서는 Node.js에서 MySQL 데이터베이스 생성 방법을 단계별로 설명하겠습니다.

MySQL 설치 및 설정

먼저, Node.js와 MySQL을 연동하기 전에 MySQL 서버가 설치되어 있어야 합니다. 설치되지 않았다면 아래 링크를 참고하여 MySQL을 설치하세요.

MySQL 설치 가이드 보기

MySQL을 설치한 후, 서버가 실행되고 있는지 확인한 다음 MySQL 터미널에 로그인합니다.

$ mysql -u root -p

이 명령어를 통해 MySQL에 로그인할 수 있으며, 이후 Node.js에서 MySQL 데이터베이스를 생성하고 관리할 준비가 완료됩니다.

Node.js에서 MySQL 데이터베이스 생성

Node.js를 사용해 MySQL 데이터베이스를 생성하려면 mysql2 패키지를 사용해야 합니다. 이 패키지는 Node.js와 MySQL 간의 연결을 처리하고, 데이터베이스 명령어를 실행할 수 있는 다양한 메서드를 제공합니다.

1. mysql2 패키지 설치

먼저, mysql2 패키지를 프로젝트에 설치합니다.

$ npm init -y
$ npm install mysql2

이 명령어를 실행하면 mysql2 패키지가 설치되고, 이를 통해 MySQL 데이터베이스와 연결할 수 있습니다.

2. 데이터베이스 연결 설정

MySQL에 연결하기 위한 기본 설정을 작성합니다. MySQL 서버에 접속할 호스트, 사용자명, 비밀번호 등의 정보를 설정합니다.

// app.js

const mysql = require('mysql2');

// MySQL 연결 설정
const connection = mysql.createConnection({
    host: 'localhost',      // MySQL 서버 호스트
    user: 'root',           // MySQL 사용자명
    password: 'your-password',  // MySQL 비밀번호
});

// MySQL 서버에 연결
connection.connect((err) => {
    if (err) {
        console.error('MySQL 연결 중 오류 발생:', err);
        return;
    }
    console.log('MySQL에 성공적으로 연결되었습니다.');
});

위 코드는 MySQL 서버에 연결하는 기본적인 설정입니다. 여기서 localhost는 MySQL 서버 호스트를, root는 MySQL 사용자명을 의미하며, password는 MySQL의 루트 계정 비밀번호입니다. 이 정보를 기반으로 MySQL에 연결됩니다.

3. 데이터베이스 생성 쿼리

MySQL에 성공적으로 연결되었다면, 이제 SQL 쿼리를 사용하여 데이터베이스를 생성할 수 있습니다.

// 데이터베이스 생성 쿼리
const createDatabaseQuery = 'CREATE DATABASE IF NOT EXISTS node_mysql';

// 데이터베이스 생성 실행
connection.query(createDatabaseQuery, (err, results) => {
    if (err) {
        console.error('데이터베이스 생성 중 오류 발생:', err);
        return;
    }
    console.log('데이터베이스가 성공적으로 생성되었습니다.');
});

위 코드는 CREATE DATABASE IF NOT EXISTS 쿼리를 사용하여 node_mysql 데이터베이스를 생성합니다. IF NOT EXISTS 조건을 사용하면 동일한 이름의 데이터베이스가 존재하지 않을 때만 새로 생성합니다.

4. 데이터베이스 연결 종료

모든 작업이 완료되면, MySQL 연결을 종료하는 것이 좋습니다. connection.end() 메서드를 사용하여 안전하게 연결을 종료할 수 있습니다.

// MySQL 연결 종료
connection.end((err) => {
    if (err) {
        console.error('MySQL 연결 종료 중 오류 발생:', err);
        return;
    }
    console.log('MySQL 연결이 종료되었습니다.');
});

이 코드는 MySQL 연결을 종료하는 역할을 하며, 데이터베이스 작업이 끝난 후 실행됩니다.

전체 코드 예시

위에서 설명한 단계를 모두 합치면, Node.js에서 MySQL 데이터베이스를 생성하는 전체 코드 예시는 다음과 같습니다.

// app.js

const mysql = require('mysql2');

// MySQL 연결 설정
const connection = mysql.createConnection({
    host: 'localhost',
    user: 'root',
    password: 'your-password',
});

// MySQL 서버에 연결
connection.connect((err) => {
    if (err) {
        console.error('MySQL 연결 중 오류 발생:', err);
        return;
    }
    console.log('MySQL에 성공적으로 연결되었습니다.');
    
    // 데이터베이스 생성 쿼리
    const createDatabaseQuery = 'CREATE DATABASE IF NOT EXISTS node_mysql';

    // 데이터베이스 생성 실행
    connection.query(createDatabaseQuery, (err, results) => {
        if (err) {
            console.error('데이터베이스 생성 중 오류 발생:', err);
            return;
        }
        console.log('데이터베이스가 성공적으로 생성되었습니다.');

        // MySQL 연결 종료
        connection.end((err) => {
            if (err) {
                console.error('MySQL 연결 종료 중 오류 발생:', err);
                return;
            }
            console.log('MySQL 연결이 종료되었습니다.');
        });
    });
});

위 코드를 실행하면 MySQL에 연결되고, node_mysql 데이터베이스가 성공적으로 생성됩니다. 데이터베이스가 이미 존재하면 생성되지 않으며, 이후 MySQL 연결이 안전하게 종료됩니다.

결론

Node.js에서 MySQL 데이터베이스 생성은 매우 간단합니다. mysql2 패키지를 사용하여 MySQL 서버와 연결하고, SQL 쿼리를 통해 원하는 데이터베이스를 손쉽게 생성할 수 있습니다. 이 과정을 통해 Node.js 애플리케이션에서 데이터를 저장하고 관리할 수 있는 첫 단계를 구현할 수 있습니다. 데이터베이스 생성 후에는 테이블 생성, 데이터 삽입, 조회 등의 기능을 추가하여 완전한 데이터 처리 시스템을 구축해보세요!

댓글 쓰기