로컬 mysql에서 AWS EC2 mysql로 DB 옮기기

비전공자·2021년 7월 23일
0

AWS 사용기

목록 보기
2/4

3시간의 대장정 끝에 완성했다.

일단 원래 DB가 있는 mysql과 aws에 설치된 mysql 버전이 안 맞아서 mysql8.0으로 다시 설치 했다.
(이 과정에서 전에 설치한거 백업하니까 오히려 안 됐음)


암튼 설치 후 root계정 비번은 초기 비번으로 냅두고
user를 하나 더 만들 때 비밀번호를 정책에 맞게 만들었다.
(틀릴 수 도 있는데 8자이상, 영대문자와 특수기호가 1자 이상 들어가야 함)



그리고 워크벤치에서 Schema trnasfer wizard에서 DB 옮기니까!!

UnicodeDecodeError: 'utf-8' codec can't decode byte 0xc1 in position 45: invalid start byte

ERROR: Counting table rows to copy: 'utf-8' codec can't decode byte 0xc1 in position 45: invalid start byte
Failed

라는 오류가 뜸. 검색해도 죄다 파이썬 얘기.

인코딩 부분은 window말고 MAC에서 해보니까 사라졌다.
근데 또 새로운 오류가 생김.

view가 문제였는데...

일단 Schema trnasfer wizard 말고 그냥 export하는 걸로 방향을 바꿈.



export 할 때 view 빼고 테이블만 폴더로 export함.
그리고 import 하니까 잘 들어갔다.

이 과정에서 원래 DB에 Tables could not be fetched 라는 문구가 떴다.

이걸 해결하려면 아무래도 스키마의 info -> table 에서 X 표시가 돼 있는 view를 지워야 하는데..

view를 다시 짜는게 관건인 듯.

워크벤치에서 aws mysql로 접속하는 건 Standard(TCP/IP)로 함.





**하면서 배운 것**

1. 뷰를 만들 때, 뷰를 참조하지 않는게 좋다.

2. puTTY에서 복붙했을 때 올바른 값임에도 불구하고 오류가 났었는데 
메모장에서 복사할 때 뒤에서 키보드로 복붙하기.
마우스 X (개행이 들어갈 수 있다.)

3. sts 프로젝트의 application.properties에서
spring.datasource.url에 도메인:3306으로 해도 된다.
profile
JUST DO IT!

0개의 댓글