RDS는 MariaDB를 사용 중입니다.
MariaDB에서 스프링부트 프로젝트를 실행하기 위해서는 몇가지 작업이 필요합니다.
- 테이블 생성 : H2에서 자동 생성해주던 테이블들을 MariaDB에선 직접 쿼리를 이용해 생성합니다.
- RDS 테이블 생성
- JPA가 사용될 테이블과 스프링 세션이 사용될 테이블 2가지를 생성
- JPA 테이블은 테스트 코드 수행 시 로그로 생성되는 쿼리를 사용합니다.
- 스프링 세션 테이블은 schema-mysql.sql 파일의 쿼리를 사용합니다.
- File 검색 ( ctrl+shift+N)으로 찾습니다.
- 두 쿼리문들을 복사하여 RDS에 반영합니다.
- JPA가 사용될 테이블과 스프링 세션이 사용될 테이블 2가지를 생성
- RDS 테이블 생성
- 프로젝트 설정 : 자바프로젝트가 MariaDB에 접근하려면 데이터 베이스 드라이버가 필요합니다. MariaDB에서 사용 가능한 드라이버를 프로젝트에 추가합니다.
- MariaDB 드라이버를 build.gradle에 등록합니다.
- compile('org.mariadb.jdbc:mariadb-java-client')
- 서버에서 구동될 환경을 구성합니다.
- src/main/resources/에 application-real.properties 파일 추가
- p. 309 참고
- 모든 설정 후 깃허브로 푸시합니다.
- MariaDB 드라이버를 build.gradle에 등록합니다.
- EC2(리눅스 서버) 설정 : 데이터베이스의 접속정보는 중요하게 보호해야할 정보입니다. 공개되면 외부에서 데이터를모두 가져갈 수 있기 때문입니다. 프로젝트안에 접속정보를 가지고 있다면 깃허브와 같이 오픈된 공간에선 누구나해킹할 위험이 있습니다. EC2서버내부에서 접속정보를 관리 하도록 설정합니다.
- OAuth와 마찬가지로 RDS 접속 정보도 보호해야 할 정보이니 EC2 서버에 직접 설정 파일을 둡니다.
- app 디렉토리에 application-real-db.properties 파일 생성
- - vim ~/app/application-real-db.properties (내용은 p.310 참조)
- 마지막으로 deploy.sh가 real profile을 쓸 수 있도록 수정합니다.(p.310 참조)
모든 설정 후 deploy.sh를 재실행합니다.
curl 명령어로 html 코드를 확인합니다.
- curl localhost : 8080
정상적으로 보인다면 성공입니다.
'프로그래밍 > 스프링 부트와 AWS로 구현하는 웹서비스' 카테고리의 다른 글
9.1 CI & CD 소개 (1) | 2020.11.14 |
---|---|
8.5 EC2에서 소셜 로그인 하기 (1) | 2020.11.14 |
8.3 외부 Security 파일 등록하기 (0) | 2020.11.07 |
8.2 배포 스크립트 만들기 (0) | 2020.11.07 |
8.1 EC2에 프로젝트 Clone 받기 (1) | 2020.10.31 |