Skip to content

nodejs mysql aws ec2 aws rds

egoing edited this page Nov 14, 2021 · 10 revisions

RDS로 데이터 베이스를 생성합니다.

  1. 생성방식 : 손쉬운 생성
  2. 구성 : MySQL
  3. 인스턴스 크기 : 프리티어
  4. 마스터 사용자 이름 : admin
  5. 마스터 암호 : 111111

ec2 인스턴스를 만듭니다.

  1. os : ubuntu 20
  2. instance type : micro
  3. security group : 22, 80 port 개방
  4. key-pair를 생성하고 다운로드 받습니다.

ec2 인스턴스에 접속합니다.

  1. ssh -i KEY_PAIR_NAME.pem ubuntu@PUBLIC_IP_ADDRESS

npm을 설치합니다.

  1. sudo apt update && sudo apt install npm -y

인스턴스를 복제합니다.

  1. git clone https://github.com/web-n/node.js-mysql.git
  2. cd node.js-mysql

DB 설정을 합니다.

  1. cd lib
  2. cp db.template.js db.js
  3. nano db.js
  4. host, user, password, database를 변경합니다.
  5. cd ..

main.js를 실행합니다.

  1. npm install 로 의존성을 설치합니다.
  2. 접속이 안됩니다.
events.js:174
      throw er; // Unhandled 'error' event
      ^

Error: connect ETIMEDOUT
    at Connection._handleConnectTimeout (/home/ubuntu/node.js-mysql/node_modules/mysql/lib/Connection.js:419:13)

db가 접속 가능하게 설정을 바꿉니다.

  1. db 인스턴스의 VPC 보안그룹을 클릭합니다.
  2. 인바운드 편집을 선택합니다.
  3. 유형에 MySQL을 선택합니다. 소스에 EC2의 보안그룹의 이름을 입력합니다.

Clone this wiki locally