728x90

사건의 발단

입사한지 2주차에 프로토타입으로 구현된 서버에 연결된 Mysql 데이터 베이스를 API 서버와 분리 할일 이 생기게 되었다.

 

Release 환경의 데이터 베이스를 API 서버와 같은 인스턴스 에 올려서 운영 한다는게 마음에 걸렸고 백업 에 대한 관리가 이루어 지고 있지 않아 AWS Rds 로 옮기기로 결정 했다.

 

AWS Rds 의 가격이 만만치 않지만 프로덕션 환경이고 백업 까지 해줘서 그냥 쓰기로했다.

 

 

https://docs.aws.amazon.com/ko_kr/AmazonRDS/latest/UserGuide/MySQL.Procedural.Importing.SmallExisting.html

 

MySQL 또는 MariaDB DB에서 MySQL 또는 MariaDB DB 인스턴스로 데이터 가져오기 - Amazon Relational Database Servic

MySQL 또는 MariaDB DB에서 MySQL 또는 MariaDB DB 인스턴스로 데이터 가져오기 시나리오에서 이 방법이 지원되는 경우 백업 파일 및 Amazon S3를 사용하여 Amazon RDS 내부 및 외부로 데이터를 더 쉽게 이동할

docs.aws.amazon.com

 

 

mysqldump -u local_user \
    --databases database_name \
    --single-transaction \
    --compress \
    --order-by-primary  \
    -plocal_password | mysql -u RDS_user \
        --port=port_number \
        --host=host_name \
        -pRDS_password

 

공식 문서를 참고하여 마이그레이션 하였고 주의 할점이 있다

-p 옵션과 입력한 암호 사이에 공백이 없어야 합니다.

 

mysqldump 를 사용하여 덤프 하는 경우 데이터가 그렇게 많지않아 30초 내외로 덤프하였다.

 

참고하면 좋은 블로그

https://velog.io/@p4rksh/Local-Maria-DB%EB%A5%BC-AWS-RDS%EB%A1%9C-%EB%A7%88%EC%9D%B4%EA%B7%B8%EB%A0%88%EC%9D%B4%EC%85%98%ED%95%98%EA%B8%B0

 

Local Maria DB를 AWS RDS로 마이그레이션하기

회사에서 운영하고 있는 레거시 시스템 중 하나를 버전업하게 되었는데, 해당 애플리케이션은 EC2 인스턴스 내에 MariaDB 엔진을 설치하여 running 중이었다. 버전업과 동시에 DB를 AWS RDS로 마이그레

velog.io

728x90