본문 바로가기

Study/개발일지

[백엔드TIL] mysql db 연결 시 주요 에러 (71일차)

❓ org/mariadb/jdbc/Driver : Unsupported major.minor version 52.0

👉 Java와 MariaDB 버전 맞추기 (버전 확인하는 곳)

 

❓ Driver com.mysql.cj.jdbc.Driver claims to not accept jdbcUrl

👉 해결1) application.properties에서 설정한 url에 오타 없는지 확인

👉 해결2) localhost의 경우 아래와 같이 설정해야 함

spring.datasource.url=jdbc:mysql://localhost.com:3306/DB명

 

❓ No session repository could be auto-configured, check your configuration (session store type is 'jdbc')

👉 application.properties에서 'spring.session.store-type' 제거

 

🔻 원인 파악하기

 

❓ java.sql.SQLNonTransientConnectionException: 
  Could not connect to address=(host=XXXXXXX)(port=3306)(type=master)
  : Socket fail to connect to host:XXXXXXX, port:3306.

예상 원인1

: DB 서비스가 종료되어 있음 또는 접속할 DB의 주소를 잘못 입력

👉 DB가 정상적으로 구동중인지 확인

 

 

예상 원인2

: 계정에 대해 접근 권한이 없음

👉 application.properties에 적은 계정의 권한 확인

application.properties

 

🔻 DB 사용자 권한 변경하기

 

 

예상 원인3

: MariaDB의 외부 IP 접속이 불가능

👉 50-server.conf 파일에서 bind-address를 0.0.0.0(전체 공개)로 변경

 

OAuth는 인터넷 사용자들이 비밀번호를 제공하지 않고 다른 웹사이트 상의 자신들의 정보에 대해 웹사이트나 애플리케이션의 접근 권한을 부여할 수 있는 공통적인 수단으로서 사용되는, 접근 위임을 위한 개방형 표준이다. 로그인 및 개인정보 관리에 대한 책임을 위임하는 것뿐만 아니라, 부여받은 접근 권한을 통해 Third-Party Application이 가지고 있는 사용자의 리소스 조회 등의 기능을 수행할 수 있다. Resource Owner는 웹 서비스를 이용하려는 유저, 자원(개인정보)을 소유하는 자를 의미한다.Client는 자사 또는 개인이 만든 애플리케이션 서버다. Authorization Server는 권한을 부여(인증에 사용할 아이템을 제공주는)해주는 서버다. Client는 Authorization Server로 부터 access token(비교적 짧은 만료기간을 가짐) 과 refresh token(비교적 긴 만료기간을 가짐)을 함께 부여 받는다.access token은 보안상 만료기간이 짧기 때문에 얼마 지나지 않아 만료되면 사용자는 로그인을 다시 시도해야한다.그러나 refresh token이 있다면 access token이 만료될 때 refresh token을 통해 access token을 재발급 받아 재 로그인 할 필요없게끔 한다.

728x90