무엇 이동 경로가?
이동 경로는 데이터베이스 관리 도구의 버전입니다. 현상 공정에서, 데이터베이스는 필연적 테이블 구조 변경, 새로운 테이블 또는 뷰 등을 변경, 예를 들면 데이터 변경을 발생한다.
이 프로젝트는 데이터베이스 개발 환경의 내용을 한 번, 기후 변화가 데이터베이스를 업데이트 할 수있는 환경을 테스트하는 것입니다 보장없는 경우.
수행 할 수있는 테스트 환경을 동시에 개발 환경에 변화가없는 경우에도 다음 또한 수행 갈 테스트 환경 열한를 완료하기 위해 개발 될 모든 SQL 스크립트를 유지해야합니다.
그런 다음 프로덕션 환경으로 이동뿐만 아니라 수행 할 수 있습니다.
SQL 스크립트의 수는 너무 많은 한 번, 작은 받아 들일 수 있다면, 스크립트 실행은 매우 많은 시간이 소요됩니다.
이동 경로는 이러한 문제를 해결하는 데 사용됩니다. 다음 섹션에서는 메이븐의 이동 경로 도구를 통합됩니다.
당신이 함께 메이븐을 사용하지 않을 경우, 이동 경로는 명령 라인을 가지고, API, Gradle을 다른 방법으로, 여기를 클릭 .
그런 긍정적 인 시작!
시작하기 전에
다음과 같이이 문서에 사용 5.2.4 버전의 이동 경로, 설치 및 메이븐 자바 환경이 해당 자바와 메이븐 버전으로 갈 것입니다 :
환경 :
자바 8, 9, 10 또는 11
메이븐 3.X
편집 :
생각
데이터베이스 :
MySQL의
당신은 설치 환경 후 Maven 프로젝트를 생성해야합니다.
이 문서에 따라 MySQL을 할 수없는 경우 MySQL 데이터베이스, 여기에 사용된다
다른는 연결 URL 데이터베이스와 데이터베이스 기반 물론, 일부 특정 구성이 다를 수 있습니다,하지만 효과이다.
당신은 예를 들어, 새로운 Person 테이블을 만들 준비가되면 그것은 모든 이동 경로 구성을 시작했다.
통합 이동 경로
첫 번째 단계
프레임 워크 또는 플러그인 또는 다른 도구 Maven 프로젝트의 도입은, 첫 번째 단계는 pom.xml 파일, 관련 자원의 도입을 수정하는 것입니다.
여기에 이동 경로 플러그를 소개했다.
1 < 작성 > 2 < 플러그인 > 3 < 플러그인 > 4 < 의 groupId > org.springframework.boot </ 의 groupId > 5 < artifactId를 > 스프링 부팅 받는다는 - 플러그인 </ artifactId를 > 6 </ 플러그인 > 7 <! - 引入이동 경로插件-> 8 < 플러그인 > 9 < 의 groupId > org.flywaydb </ 의 groupId > 10 <artifactId를 > 이동 경로 - 메이븐 - 플러그인 </ artifactId를 > 11. < 버전 > 5.2.4 </ 버전 > (12)가 < 구성 > (13)가 <! -이 데이터베이스 연결 URL을 -> (14) < URL > JDBC : MySQL은 : // localhost를 : 3306 / = dbtrial true로 useUnicode? & A; characterEncoding = UTF-8. & A; serverTimezone = UTC </ URL > (15) <! - 데이터베이스 사용자 이름 -> (16) < 사용자 > 루트 </ 사용자 > 17 <! - 데이터베이스 연결 암호 -> 18 인 < 암호 > 123 </ 암호 > . 19 <! - 데이터베이스 지정 -> 20 인 < 스키마 > dbtrial </ 스키마 > 21된다 <! - 테이블은 flyway_schema_history 존재하지 않는 지정하면 새가 -> (22)는 < baselineOnMigrate > true로 </ baselineOnMigrate > (23)가 </ 구성 > 24 </ 플러그인 > 25 </ 플러그인 > (26) </ 구축 >
참고 : pom.xml 파일의 문자 "&"로, 그래서 여기에 특수 문자로 간주되기 때문에 "& A;"
<스키마는> dbtrial </ 스키마>이 구성은 아래의 데이터베이스의 데이터베이스 스크립트 실행을 지정하는 것입니다.
실행 로그를 사용 flyway_schema_history 테이블 레코드는, 컨텐츠의 테이블. 무화과 기록되고
첫 번째는 (성공적인 구현 이동 경로가보고, 지금은 이해를 돕기 위해 사전에 게시하는 후이는, 물론) 두 번째는 SQL 스크립트 내부 프로젝트의 구현, 로그 테이블을 만드는 것입니다 :
프로젝트의 생성의 선택은 웹 프로젝트 및 MySQL 데이터베이스를 사용하기로 결정했습니다 때문에 그래서 우리는 MySQL 데이터베이스 기반을 가지고있다.
그렇지 않은 경우의 pom.xml에 의존성을 추가 할 필요가
< 의존성 > < 의 groupId > MySQL의 </ 의 groupId > < artifactId를 > MySQL을 커넥터 자바 </ artifactId를 > < 범위 > 런타임 </ 범위 > </ 의존성 >
두번째 단계
pom.xml 파일 수정을 완료 한 후, 우리는 SQL 스크립트 실행을 위해 준비해야합니다.
그러나 필요 폴더에 새 SQL 스크립트 스크립트 파일 전에 프로젝트에서 파일을 만들 수 있습니다.
경로 : \ SRC \ 주 \ 리소스 \ DB를 \ 마이그레이션
참고 :이 폴더를 만들 때, 철새 이동 경로의 기본값은 위의 경로입니다. (구성이 변경 될 수 있지만, 그러나 새로운 연구는 너무 복잡하지 않는 것이 좋습니다)
그런 다음 아래 좋은 경로를 만들 수있는 새로운 SQL 스크립트 파일을 생성
경로 : \ SRC \ 주 \ 리소스 \ DB를 \ 마이그레이션 \의 V1.1__CreatePersonTable.sql 참고 : 파일의 이름은 V1.0, V1.1, V1.x이 형식으로 권장되는 형식을 사용하고 싶습니다. 장점이
스크립트 파일의 이름에 매우 민감 이동 경로, 형식 오류하지 않을 수 있습니다, 또한보기에 도움이되는, 파일 이름이 버전을 알고있다 볼 수 있습니다.
나중에 버전은 두 개의 밑줄과 함께 사용해야합니다. 그렇지 않으면 오류 파일 이름 형식이 잘못되었을 것이다.
디렉토리 구조 :
SQL 스크립트
테이블 PERSON (생성
널되지 ID의 INT,
이름 varchar (100)는 null되지 않음
);
세 번째 단계
모든 것은 오직 강한 바람 준비, 그리고 마지막으로 우리가해야 할 이동 경로가 자동으로 실행하여 데이터베이스를 업데이트 할 수 있습니다.
터미널을 열고 다음 명령을 입력 :
실행 후 출력 정보 :
그런 다음 데이터베이스를 확인 :
개요
엔트리 레벨의 기사, 오류 또는 의심 것을 환영합니다.
이동 경로 기능은 매우 시장 데이터베이스를 매우 강력한 지원한다.
당신은 동시에 등등 서로 다른 데이터베이스, 트랜잭션의 스크립트를 실행 할 수 있습니다.
심층 사용은 할 수 공식 웹 사이트를 방문하십시오 .