이 오류는 JDBC URL 형식 문제, MariaDB 드라이버 버전 불일치, Gradle 캐시 문제 등으로 인해 발생할 수 있습니다.
🔹 1️⃣ 오류 메시지 예시
java.lang.RuntimeException: Driver org.mariadb.jdbc.Driver claims to not accept jdbcUrl, jdbc:mysql://34.00.00.xxx:3306/myuser?serverTimezone=Asia/Seoul
위와 같은 오류가 발생하면 다음 단계를 확인해보세요.
🔹 2️⃣ JDBC URL을 jdbc:mariadb:// 형식으로 변경
MariaDB를 사용할 때는 jdbc:mysql:// 대신 jdbc:mariadb://을 사용해야 합니다.
✅ 기존 설정
spring.datasource.url=jdbc:mysql://34.00.00.xxx:3306/myuser?serverTimezone=Asia/Seoul
⬇ 변경 후
spring.datasource.url=jdbc:mariadb://34.00.00.xxx:3306/myuser?serverTimezone=Asia/Seoul
🔹 3️⃣ MariaDB JDBC 드라이버 최신 버전 적용
Gradle에서 MariaDB JDBC 드라이버를 최신 버전으로 업데이트해야 합니다.
✅ build.gradle 수정
dependencies {
runtimeOnly 'org.mariadb.jdbc:mariadb-java-client:3.1.4' // 최신 버전 사용
}
최신 버전 확인: Maven Repository - MariaDB
🔹 4️⃣ Gradle 캐시 삭제 후 클린 빌드
Gradle의 캐시 문제로 인해 이전 버전의 드라이버가 계속 참조될 수도 있습니다.
./gradlew --stop
./gradlew clean
rm -rf ~/.gradle/caches
./gradlew build --warning-mode all
✅ 클린 빌드 후 재실행!
🔹 5️⃣ spring.datasource.driver-class-name 명시적으로 지정
Spring Boot가 올바른 JDBC 드라이버를 감지하지 못하는 경우 직접 지정해줘야 합니다.
✅ application.properties에 추가
spring.datasource.driver-class-name=org.mariadb.jdbc.Driver
'Database > mysql,mariaDB' 카테고리의 다른 글
오류해결 : ERROR 1046 (3D000): No database selected (0) | 2025.02.16 |
---|---|
VM에서 MariaDB 연결 오류 해결 - java.sql.SQLNonTransientConnectionException: Socket fail to connect to host (0) | 2025.02.16 |
GCP VM에 MySQL 또는 MariaDB 설치 후 로컬에서 접속하기 (0) | 2025.02.15 |