하나 고치면 하나 에러 터져서 걍 모음집 맹글기
The last packet sent successfully to the server was 0 milliseconds ago. The driver has not received any packets from the server.
패킷 보냈는데 driver가 서버로 부터 아무 패킷도 못 받았다고 함.
있었는데 없어졌어요
구글링 해서 mysql 설정을 바꿔주면 된다고 해서 바꿔줬지만 그래도 여전.
mysqld.conf 설정 참고 게시글
Failed to initialize JPA EntityManagerFactory: [PersistenceUnit: default] Unable to build Hibernate SessionFactory; nested exception is org.hibernate.exception.JDBCConnectionException: Unable to open JDBC Connection for DDL execution
그런데 이런 에러 로그도 있길래 바로 구글링 때려벌임
변경 전 spring.jpa.hibernate.ddl-auto=create
변경 후 spring.jpa.hibernate.hbm2ddl.auto=create
이래 변경하고 실행하면,
실행이 됨
RDS와 제대로 연동이 됐는지 봐야하니까 정보 입력하고 회원가입 버튼 눌렀더니 하단의 에러 폭발
java.net.ConnectException: Connection timed out: no further information
at java.base/sun.nio.ch.Net.pollConnect(Native Method) ~[na:na]
at java.base/sun.nio.ch.Net.pollConnectNow(Net.java:672) ~[na:na]
at java.base/sun.nio.ch.NioSocketImpl.timedFinishConnect(NioSocketImpl.java:549) ~[na:na]
스프링에서 데이터베이스 접근하여 접속을 기다리다가 뱉는 타임아웃 에러라고 한다.
에러 원인으로 spring.datasource.url이 RDS 엔드포인트로 되어있어서 그런가? 라는 생각이 들었다.
돈 내기 싫어서 퍼블릭 액세스 허용을 안 해뒀거든요..
저번 게시글에 ec2 -> rds 접속까지 했는데
springboot -> ec2 -> rds
는 도당체 멀까.. 라고 생각하면서 오랜 친구인 gpt를 찾아갔다.
나: springboot에서 ec2를 통해 rds로 터널링 하고싶음, 근데 나 putty 써.
gpt: 내가 전에 만든 putty ssh 터널 설정 하고 나서 properties
설정 ㄱㄱ
datasource.url에서 rds 엔드포인트가 아닌 localhost라는 점!
Access denied for user 'groot'@'localhost' (using password: YES)
at com.mysql.cj.jdbc.exceptions.SQLError.createSQLException(SQLError.java:130) ~[mysql-connector-j-8.3.0.jar:8.3.0]
새로운 에러 발생.. 오히려 좋아. groot 사용자가 localhost 접근 권한이 없는듯
내 db 사용자에 groot는 있지만 host가 localhost는 아니라서 새로 맹글어줌
CREATE USER 'groot'@'localhost' IDENTIFIED BY 'password';
GRANT ALL PRIVILEGES ON *.* TO 'groot'@'localhost';
FLUSH PRIVILEGES;
비밀번호는 알아서..
그런데 문제가 생겼다. 이미 3306 포트로 로컬 db가 있는데, rds에 저장되는 게 아니라 이 로컬에 저장이 돼버리는 사태;;
그래서 putty 수정했어요.
기존에 있던 forwarded ports 지워주고, Source port를 3307로 바꿔서 다시 저장했다.
그리고 .properties
파일에 localhost:3306
-> localhost:3307
로 포트 번호 같이 변경해 주었다.
실행했더니 이제 저장도 잘 된다. 더이상 에러가 발생하지도 않고.. 정말 행복하다.
이렇게 local 스프링에서 ec2이용해 rds로 접속까지 끗..
이틀동안 삽질했다. 많은 일이 었었어..