EC2 서버 MySQL DB를 Sequelize로 로컬에서 조작하기
1. EC2 서버의 MySQL DB 테이블을 로컬 환경의 소스 코드 편집기(VSCode 등)로 불러오는 방법
준비물
- Table을 가지고 있는 EC2 서버의 MySQL DB
- sequelize, sequelize-cli, sequelize-auto(global), mysql2(global)
1) 로컬 환경에서 sequelize 환경 세팅
npx sequelize init
실행해서 model, migration 등 환경 파일 세팅
2) Sequelize-auto를 이용해서 DB 정보 불러오기
sequelize-auto -o "./models" -d firstsql -h localhost -u root -p 3306 -x dkakcndj12~!; -e mysql
명령어를 실행해서 EC2 서버에 저장된 MySQL DB 테이블을 소스코드로 불러오기.
O = DB 테이블 스키마 파일을 생성할 폴더 경로
D = DB에서 이용할 계정 아이디
H = DB가 설치된 주소
P = DB에 접근할 주소의 포트 넘버
X = DB 계정의 비밀번호
E = 사용하는 DB의 종류
2. 로컬 환경에서 작업한 DB 테이블 정보를 EC2 서버의 MySQL DB에 적용시키는 방법
준비물
- Sequelize, mysql2, sequelize-cli
1) EC2 서버에 외부 주소에서 접근 가능한 계정 생성하기.
- 관리자 계정으로
create user '000'@'%' identified by '0000';
명령어를 실행시켜, 외부 주소(로컬)에서도 접근 가능한 계정을 생성한다.
2) 로컬 환경에서 sequelize 환경 세팅하기
npx sequelize init
실행해서 model, migration 등 환경 파일 세팅
3) config.json 파일에서 EC2 서버에서 생성한 계정 정보를 입력하기.
"development": {
"username": "AAA",
"password": "BBB",
"database": "C", (생성할 DB의 이름)
"host": "C.A.C.A",
"dialect": "mysql"
},
4) 로컬 환경에서 EC2 서버 MySQL DB에 적용할 TABLE 스키마 구성하기
npx sequelize model:generate --name User --attributes email:string,nickname:string,password:string
5) EC2 서버 MySQL에 소스코드의 내용 적용하기
- 소스코드 편집기의 터미널에서
npx sequelize db:create
,npx sequelize db:migrate
실행 시, EC2 서버 MySQL에 소스코드에서 생성한 테이블의 내용이 적용된다. - cf) db:migrate를 실행하려면, migration 폴더에 table에 해당하는 migration 파일들이 있어야만 한다.
2-1. sequelize-auto로 vsc에서 작업한 DB 테이블 정보를 EC2 서버의 MySQL DB에 적용시키는 방법
1) VSC에서 MySQL DB로 전달할 테이블을 작성한다.
- 이 때,
migration
폴더는 비어있어도 무관하다.models
만 채워져 있어도 된다.
2) app.js에 다음과 같은 코드를 추가해준다.
const sequelize = require("./models").sequelize;
sequelize.sync(); //서버가 실행될때 모델이 mysql과 연결
3) vsc의 프로젝트 파일 서버를 실행시킨다.
- 서버를 실행하면, vsc의 모델 내용이 mysql db에 적용된다.
Author And Source
이 문제에 관하여(EC2 서버 MySQL DB를 Sequelize로 로컬에서 조작하기), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://velog.io/@kr4460/EC2-서버-MySQL-DB를-Sequelize로-로컬에서-조작하기저자 귀속: 원작자 정보가 원작자 URL에 포함되어 있으며 저작권은 원작자 소유입니다.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)