MySQL dump 이용한 migration 방법 기존의 dump방식으로도 충분히 koin DB를 덤프를 떠서 로컬에 적용을 할 수 있었다. 하지만 서버를 이관할 경우는 대용량 파일을 기존 패킷 리밋으로는 이관에 애로사항이 있었기에 가이드를 만들게 되었다.
코인 db는 docker를 사용중이므로 docker에서의 dump를 설명한다.
DUMP파일 따기(기존의 서버에 접속)
mysqldump -u koin -p koin > /home/ubuntu/백업파일이름.sql
dump파일을 DB서버에 이관시키기(mobaxterm기준 드래그&드랍)
mysql docker안으로 Dump파일 복사
docker cp PC의 파일경로(디폴트/home/ubuntu) mysql-서버버젼-container:/tmp
Docker안으로 sh접속
docker exec -it mysql-서버버전-container sh
Mysql 안으로 DataImport실행
mysql -u koin -p koin </tmp/백업파일이름.sql
-> 문제는 KOIN의 article테이블에서 packet의 크기에 비해 데이터가 커서 이관도중 에러가 난다.

이럴 경우 /etc/my.cnf에서 max_allowed_packet을 늘려줘야 한다.
문제는 docker bash에서 apt vi yum등의 명령어가 안먹는다.
따라서 bash파일에서 vim을 설치해주어야 한다.
microdnf install -y vim
위와 같이 vim을 설치한후

최대 메모리를 올려준후 컨테이너를 restart 해준다.
docker restart mysql-서버버젼-container
dump가 끝났으면 다시 max_allowed_packet설정을 바꾸고 restart시킨다.
만약 스테이지 디비가 날라갔을 경우는 flywayhistory테이블을 드롭하고 실시한다.