ddl-auto 기능에 대하여

김도현·2023년 8월 7일
0

DDL 이란

데이터 정의어(Data Definition Language텍스트, DDL)은 데이터베이스 테이블(스키마)의 생성, 변경, 삭제를 담당하는 명령어 이다.

대표적으로 CREATE, ALTER, DROP, RENAME, TRUNCATE 가 있습니다.

DDL 자동 생성

ddl-auto는 데이터베이스의 테이블을 JPA 의 구현체가 자동으로 생성해주는 기능을 말한다. "테이블 자동 생성 전략" 이라고 불린다.

데이터에비스에는 다양한 dialect 가 존재하는데 JPA 구현체는 application.yml 에 지정되어 있는 dialect 에 맞는 적정한 DDL을 생성한다.

ddl-auto 는 이렇게 5가지 속성을 제공하며 해당 기능을 통해 개발자는 직접 DDL 을 생성할 필요 없이 데이터베이스를 관리할 수 있게 된다.

올바른 ddl-auto 사용법

위에서 알아본바와 같이 ddl-auto 는 개발자의 수고를 덜어줄 수 있는 기능이다. 하지만 각별한 주의를 기울여 사용해야 한다.
왜냐하면 해당 기능을 잘못된 경우에 사용시 중요한 데이터가 날아갈 수 있으며, 서버에 큰 에러가 발생할 수도 있기 때문이다.

  • 실제 운영 서버에서는 create, crate-drop, update 절대 사용 금지
  • 개발 초기 단계에서는 create, update 사용
  • 테스트 서버에서는 update, validate 사용
  • 스테이징 서버와 운영 서버에서는 validate, none 사용

실제 운영 서버에서는 직접 쿼리를 날리는 것이 좋다.

출처: https://velog.io/@choidongkuen/ddl-auto-%EA%B8%B0%EB%8A%A5%EC%9D%80-%EB%AC%B4%EC%97%87%EC%9D%BC%EA%B9%8C

profile
Just do it

1개의 댓글

comment-user-thumbnail
2023년 8월 7일

감사합니다. 이런 정보를 나눠주셔서 좋아요.

답글 달기