문서의 선택한 두 판 사이의 차이를 보여줍니다.
양쪽 이전 판 이전 판 다음 판 | 이전 판 | ||
java:database:migration:liquibase [2020/07/10 17:41] kwon37xi |
java:database:migration:liquibase [2022/04/14 12:34] kwon37xi |
||
---|---|---|---|
줄 9: | 줄 9: | ||
* https:// | * https:// | ||
+ | <code groovy> | ||
+ | plugins { | ||
+ | id ' | ||
+ | } | ||
+ | |||
+ | // JDBC 드라이버 등 관련 의존성을 일일이 따로 걸어주거나 아래처럼 runtime에서 그대로 가져온다. | ||
+ | // 공식문서에는 runtime 을 상속하라고 돼 있지만 실제로는 runtimeClasspath 여야 작동했음. Gradle 6.5.x | ||
+ | configurations { | ||
+ | liquibaseRuntime.extendsFrom runtimeClasspath | ||
+ | } | ||
+ | |||
+ | // java 9 이상 버전 사용시에 jaxb 명시적 설정 필요. | ||
+ | liquibaseRuntime group: ' | ||
+ | |||
+ | // 혹시 logback 을 안사용한다면 추가 필요. | ||
+ | liquibaseRuntime(" | ||
+ | liquibaseRuntime(" | ||
+ | |||
+ | // hibernate diff 모듈을 사용한다면, | ||
+ | liquibaseRuntime ' | ||
+ | liquibaseRuntime sourceSets.main.output | ||
+ | |||
+ | liquibase { | ||
+ | activities { | ||
+ | main { | ||
+ | changeLogFile ' | ||
+ | url " | ||
+ | username " | ||
+ | password " | ||
+ | } | ||
+ | } | ||
+ | } | ||
+ | </ | ||
+ | ===== ChangeLog 관리 ===== | ||
+ | * main changelog 관리 XML을 만들고, 거기서 각각 단일 changeset 을 가지는 다른 xml 들을 include 하는 형태로 관리하는 것이 좋다. | ||
+ | * 하나의 chagelog 파일은 하나의 changeset 만 가지는 것이 좋다. | ||
+ | * '' | ||
+ | <?xml version=" | ||
+ | < | ||
+ | xmlns=" | ||
+ | xmlns: | ||
+ | xsi: | ||
+ | http:// | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | </ | ||
+ | </ | ||
+ | * '' | ||
+ | <?xml version=" | ||
+ | < | ||
+ | xmlns=" | ||
+ | xmlns: | ||
+ | xsi: | ||
+ | http:// | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | < | ||
+ | </ | ||
+ | </ | ||
+ | </ | ||
+ | </ | ||
+ | </ | ||
+ | ===== Change Set Types ===== | ||
+ | ==== sql ==== | ||
+ | * https:// | ||
+ | * SQL 구문을 있는 그대로 넣을 수 있다. | ||
+ | * 기본 delimiter가 '';'' | ||
+ | * '' | ||
+ | <code xml> | ||
+ | < | ||
+ | < | ||
+ | endDelimiter=" | ||
+ | splitStatements=" | ||
+ | stripComments=" | ||
+ | < | ||
+ | < | ||
+ | insert into person (name) values (' | ||
+ | ]]></ | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | ===== 참조 ===== | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// | ||
+ | * [[https:// |