programing

Spring Session Attributes 테이블 이름은 대소문자를 구분합니다.

topblog 2023. 9. 5. 19:33
반응형

Spring Session Attributes 테이블 이름은 대소문자를 구분합니다.

Ubuntu에서 MariaDB를 실행하고 있어 테이블 이름이 대소문자를 구분합니다.저는 봄 세션에서 초기화 스키마 옵션을 사용하고 있습니다.내 구성은 다음과 같습니다.

spring.session.store-type=jdbc
server.servlet.session.timeout=30m
spring.session.jdbc.initialize-schema=always
spring.session.jdbc.table-name=spring_session

Windows(윈도우)에서는 대소문자를 구분하지 않으므로 잘 작동합니다.그러나 Ubuntu에서는 다음과 같은 예외가 발생합니다.

Caused by: java.sql.SQLException: Table 'mytable.SPRING_SESSION_ATTRIBUTES' doesn't exist

그리고.

Caused by: java.sql.SQLException: Table 'mytable.spring_session_ATTRIBUTES' doesn't exist

하지만 데이터베이스를 확인해보니 테이블이 소문자 이름으로 생성된 것을 확인했습니다.이게 벌레인 것 같아요?그래서 다음을 사용하여 수동으로 테이블 이름을 변경했습니다.

rename table spring_session_attributes to SPRING_SESSION_ATTRIBUTES;

그리고 나는 그것이 지금 작동하고 있다는 것을 확인했습니다.

제 질문은:데이터베이스를 수동으로 변경하지 않고 어떻게 이 문제를 해결할 수 있습니까?

언급URL : https://stackoverflow.com/questions/52280400/spring-session-attributes-table-name-is-case-sensitive

반응형