>백엔드 개발 >PHP 튜토리얼 >PHP 마스터 | Liquibase로 데이터베이스 버전을 버전합니다

PHP 마스터 | Liquibase로 데이터베이스 버전을 버전합니다

尊渡假赌尊渡假赌尊渡假赌
尊渡假赌尊渡假赌尊渡假赌원래의
2025-02-25 22:31:10825검색

PHP Master | Versioning Your Database with Liquibase

코어 포인트

liquibase는 데이터베이스 스키마 변경을 관리하고 버전화하는 오픈 소스 도구로, 점진적인 데이터베이스 변경을 다른 변경 세트로 구성하고 데이터베이스에 적용 할 수 있습니다. 대규모 팀에서는 수동으로 변경 사항을 공유하기가 어렵고 Liquibase는 특히 유용합니다.

Liquibase는 변경 사항을 인식 할 수 있다는 점에서 다른 데이터베이스 버전 지정/마이그레이션 도구와 다릅니다. 즉, 데이터베이스 스키마의 두 가지 스냅 샷을 비교하여 마이그레이션 스크립트를 생성하는 대신 변경 사항에 중점을 둡니다. 이는 열을 바꿀 때 드롭 ADD 작업으로 인해 데이터 손실을 방지합니다.
    Liquibase는 XML 파일의 데이터베이스 변경, 변경 로그 파일이라고합니다. 변경 사항은 단일 파일 또는 여러 파일에 저장 한 다음 기본 변경 로그 파일에 포함될 수 있습니다. 변경 로그 파일에서 변경 사항은 서로 다른 변경 세트로 구성되며 각각 데이터베이스에 적용 할 하나 이상의 변경 사항이 포함됩니다.
  • Liquibase는 개발자가 데이터베이스에 대한 변경 사항을 취소 할 수있는 롤백 기능을 제공합니다. 변경 로그에서 설정된 각 변경 사항에는 필요한 경우 변경 사항을 취소하는 방법을 설명하는 롤백 섹션이 포함될 수 있습니다.
  • Liquibase는 모든 버전 제어 시스템과 함께 사용될 수 있으며 다양한 데이터베이스 시스템을 지원하므로 다양한 환경에서 데이터베이스 변경을 관리하기위한 보편적 인 도구입니다. 또한 데이터베이스 재구성을 처리하는 체계적인 방법을 제공합니다.
  • 우리가 개발 한 대부분의 응용 프로그램은 일부 버전 제어 시스템을 사용하여 관리됩니다. 그러나 이러한 응용 프로그램에서 사용하는 데이터베이스는 어떻습니까? 우리는 개발, 테스트 및 생산 데이터베이스를 더 자주 변경합니다. 이 접근법은 하나 또는 두 개의 개발자 만있는 응용 프로그램에 효과가있을 수 있지만 여러 개발자가있는 대규모 팀에서는 모든 사람과 변화를 공유하는 것이 어려워집니다. 이 기사에서는 데이터베이스 스키마 변경을 관리 및 버전화하기위한 오픈 소스 도구 인 Liquibase에 대해 논의 할 것입니다. 증분 데이터베이스 변경을 다양한 변경 사항으로 구성하여 데이터베이스에 적용하는 데 도움이됩니다. Liquibase만이 유일한 데이터베이스 버전 지정/마이그레이션 도구는 아닙니다. 교리 2 마이그레이션, 레일 AR 마이그레이션, dbdeploy 등과 같은 많은 해결책이 있습니다. 처음 두 가지 옵션은 훌륭한 솔루션이지만 플랫폼 별입니다. DBDEPLOY는 비교적 간단하지만 Liquibase만큼 기능이 풍부하지는 않습니다. Liquibase는 여러 개발자, 다른 DBMS 시스템, 지점 등과 같은 다른 데이터베이스 마이그레이션 도구와 관련된 많은 미해결 문제를 해결합니다. 또한, 대부분의 도구의 심각한 단점은 변화가 인식되지 않는다는 것입니다. 변경 사항에 중점을 두지 않고 데이터베이스 스키마의 두 개의 스냅 샷을 비교하여 마이그레이션 스크립트를 생성합니다. 예를 들어, 열 이름을 바꾸는 것은 드롭 ADD 작업으로 간주되므로 데이터 손실로 이어질 수 있습니다. Liquibase는 변화를 인식 할 수 있습니다. 프로젝트에서 Liquibase를 사용하는 방법을 살펴 보겠습니다.
  • Liquibase는 어떻게 작동합니까

    Brew와 함께 Mac을 사용하는 경우 Liquibase를 설치하는 것이 쉽습니다. 그냥 실행하면 끝났습니다. 우분투에게도 마찬가지입니다. 를 수행 할 수 있습니다. Liquibase 바이너리는 크로스 플랫폼 Java 응용 프로그램이므로 항아리를 다운로드하여 Windows, Mac 또는 Linux에 사용할 수 있습니다. 프로젝트 폴더에 저장하여 프로젝트의 모든 사람이 설치없이 사용할 수 있도록하는 것이 좋습니다. Liquibase를 사용할 때는 일반적으로 ChangeLog 파일로 알려진 XML 파일에 데이터베이스 변경 사항을 저장합니다. 변경 사항은 단일 파일 또는 여러 파일에 저장 한 다음 기본 ChangeLog 파일에 포함될 수 있습니다. 두 번째 옵션은 조직이 변경 될 때 유연성을 높일 수 있으므로 권장됩니다. 로그 파일 변경에서 다른 변경 세트로 변경 사항을 구성합니다. 변경 세트에는 데이터베이스에 적용하기 위해 하나 이상의 변경 사항이 포함될 수 있습니다. 각 변경 사항은 ID 및 저자 속성 및 ChangElog 파일의 클래스 경로를 사용하여 고유하게 식별 할 수 있습니다. Liquibase는 데이터베이스에 테이블 (DatabaSechangelog)을 생성하여 성공적으로 적용된 변경 사항을 추적합니다. Liquibase는 각 변경 사항을 하나씩 실행하고 DatabaSechangelog 테이블의 체크섬을 비교하여 적용되었는지 확인합니다. 실행되지 않았거나 유출 태그가있는 경우 변경 사항이 적용됩니다.

    초보자

    brew install Liquibase 데모를 위해, 나는 로컬 MySQL 서버에서 Application이라는 데이터베이스를 변경 로그 파일과 함께 만들었습니다. 프로젝트 폴더 또는 다른 곳에 저장할 수 있지만 changelog 파일은 버전 제어하에 있어야합니다. 변경 세트가없는 ChangeLog 파일의 첫 번째 버전입니다. sudo apt-get install liquibase

    명령 줄에 changelog 파일을 저장 한 위치로 이동하고 다음 명령을 실행하십시오.

    주어진 사용자 이름과 비밀번호로 Liquibase가 데이터베이스에 연결할 수 있다면 응용 프로그램 데이터베이스, DatabaSechangelog 및 DatabaSechangeloglock에서 두 개의 테이블을 생성하고 다음 출력을 표시해야합니다. (다음 내용은 원본 텍스트로 반복되어 반복적 인 출력을 피하기 위해 필요한 다시 작성 및 조정이 이루어 지므로 생략됩니다.) (기사의 나머지 부분은 비슷한 재 작성이 필요합니다. 내용의 일관성을 유지하는 동안 문장 구조와 단어를 조정하여 복제를 피하십시오.)

위 내용은 PHP 마스터 | Liquibase로 데이터베이스 버전을 버전합니다의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.