RDS + NODE.JS DB 연결

박박버러지·2024년 7월 29일

나중에 글 좀 다듬어서 정리할 예정
틀린 내용 있으면 언제든 지적해주세요

동아리 팀프로젝트를 하게 되어서 DB 연결 하는 과정을 한 번 남겨봅니다
이미 기본적인 틀은 짜여 있는 프로젝트와 연결하는 과정입니다

AWS RDS 사용!!

  1. Mysql Workbench 실행


그럼 화면 중앙에 이런 버튼이 있습니다
'+' 버튼을 눌러줌

Connection Name -> 내가 임의로 써도 됨
Connection Method는 안 건드려도 됨
Hostname에는 쓰고자 하는 RDS의 주소를 넣어주어야 한다. 어쩌고어쩌고 ~ amazonaws.com 이런 주소를 붙여넣는다
그리고 설정한 사용자 이름이랑 패스워드를 Store in Keychain 버튼을 눌러서 입력
Default Schema는 나중에 추가해도 됨
그리고 Test Connection을 눌러보고 Success라고 뜨면 OK라고 눌러줍시다

잘 들어와짐을 확인합니다

그럼 이제 내 프로젝트랑 연결이 잘 되었는지를 한번 확인해봐야됨

  1. 테스트 스키마 만들기
CREATE SCHEMA test; // CREATE DATABASE test;라고 써줘도 상관 X 

저는 이 명령어를 사용해서 test라는 스키마를 하나 만들어줬습니다

그리고 잘 생성되었는지를 확인해 줘야 합니다

SHOW DATABASES;

이 명령어를 사용하면 됨.

참고로 실행할때는 번개 모양 클릭하시면 됩니다

저기 test 보이시죠!? 그럼 성공한것.

그럼 이제 vs code 프로젝트를 켜서 터미널을 켜줌
모듈 설치 안됐으면 모듈부터 설치합시다

  1. 모듈 설치
yarn add mysql // yarn 쓰시는 분들
npm install --save mysql // npm 

모듈 설치를 완료했으면 테스트 코드를 한 번 작성해봅시다

  1. 테스트 코드
    프로젝트 루트에 test-db-connection.js 이라는 파일을 만들어줬음
// test-db-connection.js // 

import { pool } from './config/db-config.js'; // 해당하는 js파일의 경로 

(async () => {
  try {
    const connection = await pool.getConnection();
    console.log('Successfully connected to the database');
    connection.release();
  } catch (err) {
    console.error('Error connecting to the database:', err);
  }
})();

제 경험상 경로 제대로 안 써서 오류나는 경우가 많았습니다 물론 금방 고칠 수 있겠지만 그래도 오류 없이 한번에 쉽게 쉽게 가는게 좋으니 체크 한번씩 ㄱㄱ

// db-config.js // 

import mysql from 'mysql2/promise';
import dotenv from 'dotenv';

dotenv.config();

const databaseConfig = {
  host:
    process.env.DB_HOST ||
    'hostname의 주소를 여기다가 입력하시면 됨',
  user: process.env.DB_USER || 'root',
  port: parseInt(process.env.DB_PORT || '3306'),
  database: process.env.DB_TABLE || 'db이름',
  password: process.env.DB_PASSWORD || '비번',
  waitForConnections: true,
  connectionLimit: 10,
  queueLimit: 0,
};

export const pool = mysql.createPool(databaseConfig);

.env 파일도 잘 만들었는지 확인되면 실행하면 됩니다

  1. 테스트 코드 실행

이렇게 되면 성공한 것임

끝은 곧 시작.... 화이팅해봅시다

profile
실패가 두려워지지 않을 때까지

0개의 댓글