[My Project]/[Error Note]
[Error Note] Spring session' doesn't exist 세션 테이블 생성이 안되는 오류
북방바다코끼리표범
2023. 11. 12. 17:23
유저 서버와 어드민 서버를 분리하면서 유저 서버는 session 저장소를 redis, 어드민은 jdbc로 가져가게 했음
어드민은 jdbc로 가져가게 된 이유는 어드민 유저의 수는 일반 유저에 비해 많이 적기 때문에 세션 I/O 과정에 부하가 적어 선택하게 되었음. (유지 보수 비용도 고려)
세션 저장소로 jdbc로 사용하려면 아래와 같이 프로퍼티 파일에 옵션을 주면됨
spring.session.store-type=jdbc
하지만 이렇게 설정을하고 실행을 하면 spring_session 테이블이 생성이 안되었다는 에러가 발생
문제 해결
만약 프로젝트에서 사용하는 데이터베이스가 embeded 타입이라면 spring_session 테이블은 자동 생성되도록 기본 설정 되어 있지만
나는 embeded 타입이 아닌 db 서버가 따로 있기 때문에 spring_session 테이블이 생성되지 않는 것
spring_session 테이블을 자동 생성하도록 하는 방법은 간단함
아래처럼 옵션을 추가하기만 하면 됨
|
spring.session.store-type=jdbc |
|
spring.session.jdbc.initialize-schema=always |