아래 블로그를 따라 AWS를 사용해보고 싶어 기존 포트폴리오용으로 개발한 프로젝트를 활용하게 되었고,
mysql+mybatis를 사용해서 JPA와 관련되어있는 글은 생략하고 넘어갔다.
글을 따라가며 생긴 이슈사항을 정리했다
https://wickies.tistory.com/100?category=768093
RDS
블로그에 나와있는 amazon ui와 현재의 ui가 달라져있어 당황을 하긴 했지만 별 탈 없이 진행되었다.
mariaDB + mysql workbench연결
나의 로컬pc mysql에서 10060 Error가 발생하면서 알림창이 발생했다.
나는 오류 검색 중 RDS에 나의 pc가 보안 그룹에 허용되어있지 않아 생기는 문제를 확인하고 아래와 해결했다.
https://forums.aws.amazon.com/thread.jspa?threadID=231166
다음은 아래와 같이 경고 알림창이 뜨면서 또 다른 오류가 나오나 싶었지만 무시해도 상관없는 알림이었다.
https://exceptionshub.com/mysql-workbench-incompatiblenonstandard-server.html
EC2와의 연결까지 한 뒤 프로젝트에서 DB에 접근하는 순간 사용하고 있던 putty에 Access Denied Error가 발생했다.
이건 데이터베이스에서 접속 계정에 대한 권한을 설정해주지 않아서 생긴 문제이다.
여지까지 mysql을 root로만 사용했더니 모르고 있던 사실이었다.
아래와 같이 해결했다.
EC2
UpLoadPath
AWS에 활용하고 있는 프로젝트는 CKEditor 플러그인, input 태그를 사용한 이미지 업로드 기능 두 가지의 기능을 사용해서 이미지 경로가 맞지 않으면 오류가 난다.
리눅스 사용을 거의 안 했던 탓 덕분에 시간이 지연됐다.
결론은 폴더에 데이터를 쓸 권한이 없다는 것
1. CKEditor
uploadPath는 /home/ubuntu/BZShop/src/main/webapp/resources/ckUpload
간단했다 폴더 하나에만 권한을 주면 됐다.
sudo chmod 777 ./권한을 줄 디렉토리 이름
2.ImgesUpload
uploadPath는 /home/ubuntu/BZShop/src/main/webapp/resources/imgUpload
이 기능은 현재 날짜별로 폴더를 만들어 이미지를 저장하는 기능이 있는데 문제는
하위 폴더 별대로 권한이 있어야 했다.
sudo chmod -R ./권한을 줄 디렉토리 이름
이렇게 UpLoadPath문제는 해결했다.
Google MailService(smtp)
프로젝트에서 회원가입, 비밀번호 찾기 기능을 사용하기 위해서 Gmail을 사용하고 있는데
ec2로 옮기면서 아래와 같은 Error가 발생했다.
org.springframework.mail.MailAuthenticationException: Authentication failed; nested exception is javax.mail.AuthenticationFailedException:
해결은 google계정에 대한 액세스 허용을 해주니 해결되었다.
https://iamksu.tistory.com/102
+@마지막으로
배포용 코드 작성에서
1. TODO 경로 수정
2. TODO 피드명 수정
3. JAR_NAME 수정
총 3군데를 본인에 맞게 잘 수정하자
이렇게 모든 오류는 해결되었다.
2020.05.21 - [AWS] - [AWS] 구렁텅이에서 기어올라온 - Solutions Architect Associate 자격증 취득 후기
AWS 자격증 취득 후 관련 업종에 취직하기 위해 또는 스펙에 도움이 되고자
AWS로 프로젝트 구성을 하여 포트폴리오를 만들었다.
앞으로 어떻게 될지는 모르겠지만
정말 고생 많았다고 나에게 말해주고 싶다.
이 글을 보고 있는분도 힘든일이 있으시다면 화이팅 입니다!