작성
·
449
·
수정됨
0
먼저 진행한 순서는 아래와 같습니다.
AWS RDS(MySQL) 생성 후 퍼블릭 엑세스 가능으로 설정하였습니다.
(접속은 MySQL Workbench로 확인하였습니다.)
ConnectionString 은 아마존 개발자 안내서와 강의 내 다른 분 질문에 달아주신 답변을 참고하여 작성하였습니다.
SharedDB 프로젝트를 시작프로젝트로 설정할 수 있도록 Main 함수를 임시로 복원한후 SharedDBContext.cs 파일의 ConnectionString을 2에서 작성한 내용으로 설정하였습니다.
시작프로젝트와 패키지 관리자 콘솔의 기본 프로젝트를 SharedDB로 설정하여 add-migration을 하여 성공하였습니다.
이후 update-database 를 실행하면 아래와 같은 에러를 발생하고 진행이 되지 않습니다.
위와 관련해서 질문을 정리하자면
RDS의 퍼블릭 엑세스를 허용해도 제 개인 PC의 코드에서 직접 마이그레이션 하려면 ConnectionSting 외 코드에 추가적인 작업이 필요한가요?
제 개인 PC에서 RDS를 마이그레이션 하려면 RDS에서 추가적으로 설정해야할 권한 등이 있을까요?(현재 보안 그룹은 강의에서 나온 모두 다 열어둔? 상태입니다.)
혹시 저와 같은 이상한? 삽질을 하시는 분이 있을까 해서 해결한 방법을 공유드립니다.
NuGet 패키지 관리자에서 마이그레이션하고자 하는 프로젝트에 MySql.EntityFrameworkCore를 설치하였습니다.
ConnectionString을 다음과 같이 수정하였습니다.
@"Server=[DB 엔드포인트];port=[포트];database=[DB 이름];uid=[사용자 이름];pwd=[비밀 번호]";
아래의 OnConfiguring 함수를 다음과 같이 수정하였습니다.(대소문자 주의)
기존의 마이그레이션 폴더들을 정리해줬습니다. 기존에 마이그레이션 정보들이 남아있으면 충돌나면서 update-database 시 실패를 하는 것 같습니다. 항상 최초의 마이그레이션으로 실행을 하네요. 주소가 달라서 그런가?
MySQL Workbench에서 확인해줍니다.
답변 1
0
안녕하세요, 인프런 AI 인턴이에요.
RDS MySql의 디비를 마이그레이션 하는 과정에서 질문하신 내용에 대해 답변드리겠습니다.
RDS의 퍼블릭 엑세스를 허용해도 제 개인 PC의 코드에서 직접 마이그레이션 하려면 ConnectionString 외 코드에 추가적인 작업이 필요한가요?
퍼블릭 엑세스를 허용하였다면 ConnectionString 설정으로만 개인 PC에서 RDS MySql에 접근할 수 있습니다. 추가적인 작업은 필요하지 않습니다.
제 개인 PC에서 RDS를 마이그레이션 하려면 RDS에서 추가적으로 설정해야할 권한 등이 있을까요?(현재 보안 그룹은 강의에서 나온 모두 다 열어둔? 상태입니다.)
추가적인 권한 설정은 필요하지 않습니다. 보안 그룹에서 모두 열어둔 상태라면 개인 PC에서 RDS MySql에 접근할 수 있습니다.
혹시 저와 같은 이상한? 삽질을 하시는 분이 있을까 해서 해결한 방법을 공유드립니다.
정리해주신 내용과 함께 공유해주신 해결방법도 감사드립니다! 삽질을 하시는 분들께 도움이 될 수 있을 것 같아요.
더 필요한 질문이 있으시다면 언제든지 물어봐주세요. 좋은 하루 되세요 :)