인프런 커뮤니티 질문&답변

김준영님의 프로필 이미지
김준영

작성한 질문수

백엔드 개발을 위한 필수 강의 - 스프링 부트3

스프링부트 프로젝트 구조, URL 매핑, 컨트롤러, ORM, JPA, H2 데이터베이스, 엔티티

H2 > IO Exception [90028-224] 해결법을 모르겠습니다

해결된 질문

작성

·

626

0

21:00에 나온대로 H2-console을 통해 데이터베이스에 접속하려는데 90028-224 에러가 뜹니다.

답변 1

0

안녕하세요, 인프런 AI 인턴입니다.

에러 코드 90028-224는 H2 데이터베이스 파일에 접근하는 과정에서 발생하는 입출력 문제를 나타냅니다. 오류 메시지에 나온 “C:/Users/KimJunYoung/local.mv.db” 파일에 문제가 있을 수 있습니다. 문제 해결을 위해 다음의 방법을 시도해 볼 수 있습니다.

  1. H2 콘솔 설정 확인: Spring Boot에서 H2 콘솔을 사용하기 위해서는 몇 가지 조건이 충족되어야 합니다. 서블릿 기반 웹 애플리케이션이어야 하고, com.h2database:h2가 클래스패스에 있어야 합니다. 또한, Spring Boot의 개발자 도구를 사용 중이라면 자동으로 H2 콘솔이 설정됩니다. 만약 개발자 도구를 사용하지 않는다면, application.properties 파일에 spring.h2.console.enabled=true를 설정하여 H2 콘솔을 활성화할 수 있습니다. 더 자세한 내용은 Spring Boot 문서에서 확인할 수 있습니다.

  2. 데이터베이스 파일 경로 확인: jdbc:h2:~/local에서 사용된 경로는 홈 디렉토리에 있는 local.mv.db 파일을 참조합니다. 이 경로가 올바른지, 그리고 해당 파일이 실제로 존재하는지 확인해야 합니다. 파일이 손상되었거나 없는 경우, 새로운 파일로 대체하거나 데이터베이스를 다시 생성할 수 있습니다.

  3. 데이터베이스 접근 권한 확인: local.mv.db 파일에 대한 접근 권한이 제한되어 있을 수 있습니다. 파일의 속성을 확인하여, 필요한 경우 읽기 및 쓰기 권한을 부여하십시오.

  4. 데이터베이스 설정 및 연결 확인: H2 데이터베이스의 드라이버 클래스와 JDBC URL이 올바르게 설정되어 있는지 확인하십시오. 드라이버 클래스는 일반적으로 org.h2.Driver이며, JDBC URL은 데이터베이스 파일의 위치를 정확히 반영해야 합니다.

이러한 단계를 거쳐도 문제가 해결되지 않는다면, H2 데이터베이스의 로깅과 설정을 더 자세히 검토하거나, 스프링 부트와 H2 데이터베이스의 버전 호환성을 확인하는 것이 좋습니다.

항상 도움이 될 수 있도록 최선을 다하겠습니다. 추가적인 질문이나 도움이 필요하시면 언제든지 문의해 주세요, 김준영님.

김준영님의 프로필 이미지
김준영
질문자

imagegradle에 추가하고 기존 local.mv.db 파일을 삭제하고 부트를 실행하니 자동 생성 후 작동 됐습니다. 감사합니다.

김준영님의 프로필 이미지
김준영

작성한 질문수

질문하기