인프런 커뮤니티 질문&답변

SeongKyun Park님의 프로필 이미지
SeongKyun Park

작성한 질문수

[C#과 유니티로 만드는 MMORPG 게임 개발 시리즈] 번외편: AWS로 시작하는 서버 운영

Windows 실습

[해결]RDS MySql의 디비를 마이그레이션 하는 과정에서 질문이 있습니다.

작성

·

446

·

수정됨

0

먼저 진행한 순서는 아래와 같습니다.

 

  1. AWS RDS(MySQL) 생성 후 퍼블릭 엑세스 가능으로 설정하였습니다.
    (접속은 MySQL Workbench로 확인하였습니다.)

  2. ConnectionString 은 아마존 개발자 안내서와 강의 내 다른 분 질문에 달아주신 답변을 참고하여 작성하였습니다.

  3. SharedDB 프로젝트를 시작프로젝트로 설정할 수 있도록 Main 함수를 임시로 복원한후 SharedDBContext.cs 파일의 ConnectionString을 2에서 작성한 내용으로 설정하였습니다.

  4. 시작프로젝트와 패키지 관리자 콘솔의 기본 프로젝트를 SharedDB로 설정하여 add-migration을 하여 성공하였습니다.

  5. 이후 update-database 를 실행하면 아래와 같은 에러를 발생하고 진행이 되지 않습니다.
    캡처.PNG

위와 관련해서 질문을 정리하자면

  1. RDS의 퍼블릭 엑세스를 허용해도 제 개인 PC의 코드에서 직접 마이그레이션 하려면 ConnectionSting 외 코드에 추가적인 작업이 필요한가요?

  2. 제 개인 PC에서 RDS를 마이그레이션 하려면 RDS에서 추가적으로 설정해야할 권한 등이 있을까요?(현재 보안 그룹은 강의에서 나온 모두 다 열어둔? 상태입니다.)

 

  • 혹시 저와 같은 이상한? 삽질을 하시는 분이 있을까 해서 해결한 방법을 공유드립니다.

    1. NuGet 패키지 관리자에서 마이그레이션하고자 하는 프로젝트에 MySql.EntityFrameworkCore를 설치하였습니다.

    2. ConnectionString을 다음과 같이 수정하였습니다.
      @"Server=[DB 엔드포인트];port=[포트];database=[DB 이름];uid=[사용자 이름];pwd=[비밀 번호]";

    3. 아래의 OnConfiguring 함수를 다음과 같이 수정하였습니다.(대소문자 주의)
      캡처1.PNG

    4. 기존의 마이그레이션 폴더들을 정리해줬습니다. 기존에 마이그레이션 정보들이 남아있으면 충돌나면서 update-database 시 실패를 하는 것 같습니다. 항상 최초의 마이그레이션으로 실행을 하네요. 주소가 달라서 그런가?

    5. MySQL Workbench에서 확인해줍니다.

      캡처2.PNG

답변 1

0

안녕하세요, 인프런 AI 인턴이에요.
RDS MySql의 디비를 마이그레이션 하는 과정에서 질문하신 내용에 대해 답변드리겠습니다.

  1. RDS의 퍼블릭 엑세스를 허용해도 제 개인 PC의 코드에서 직접 마이그레이션 하려면 ConnectionString 외 코드에 추가적인 작업이 필요한가요?
    퍼블릭 엑세스를 허용하였다면 ConnectionString 설정으로만 개인 PC에서 RDS MySql에 접근할 수 있습니다. 추가적인 작업은 필요하지 않습니다.

  2. 제 개인 PC에서 RDS를 마이그레이션 하려면 RDS에서 추가적으로 설정해야할 권한 등이 있을까요?(현재 보안 그룹은 강의에서 나온 모두 다 열어둔? 상태입니다.)
    추가적인 권한 설정은 필요하지 않습니다. 보안 그룹에서 모두 열어둔 상태라면 개인 PC에서 RDS MySql에 접근할 수 있습니다.

  3. 혹시 저와 같은 이상한? 삽질을 하시는 분이 있을까 해서 해결한 방법을 공유드립니다.
    정리해주신 내용과 함께 공유해주신 해결방법도 감사드립니다! 삽질을 하시는 분들께 도움이 될 수 있을 것 같아요.

더 필요한 질문이 있으시다면 언제든지 물어봐주세요. 좋은 하루 되세요 :)

SeongKyun Park님의 프로필 이미지
SeongKyun Park

작성한 질문수

질문하기