우리는 java 및 oracle 11g를 사용하여 고객을위한 웹 기반 솔루션을 개발 중입니다. 프로젝트는 고객을 위해 설치되지만 대부분의 기능은 개발 중입니다. 매월 고객 사이트에 설치해야하는 새 버전을 출시합니다. 문제는 각 릴리스에서 DB (테이블, 뷰, SP, 트리거 등)에 많은 변화가 있다는 것입니다. 개발 라인에서 덤프를 가져 와서 고객 사이트로 가져갈 수는 없습니다.이전 DB에서 새 DB로 마이그레이션 할 SQL 스크립트를 생성하는 방법은 무엇입니까?
질문은 고객 DB의 스키마를 새 버전 (개발 버전)으로 마이그레이션 할 수있는 SQL 스크립트를 어떻게 생성 할 수 있습니까? 이 스크립트를 생성하기위한 자동화 도구가 있습니까? 거기에 할 수있는 자바에 어떤 오픈 소스 코드가 있습니까? 이 문제에 대한 모범 사례?
편집
는 답변에 따르면, 가장 좋은 방법은 DB 계획의 직접적인 변화에서 개발자를 금지하는 것입니다 그들이 작성하고 각 DB 업데이트를 변경 스크립트를 저지해야한다는 것. 하지만이 방법을 사용하면 잠시 후에 변경 스크립트가 많이 존재하게되며 각 스크립트에는 DB에 특정 업데이트가 있습니다. 이러한 대량의 스크립트를 어떻게 관리 할 수 있습니까?
나는 공구가 존재한다고 생각하지만 나는 어떤 이름을 모른다. 하지만이를 관리하는 방법은 일반적으로 SQL 스크립트의 히스토리를 유지하는 VCS를 사용하는 것입니다. VCS는 소프트웨어의 버전 2 사이에서 수정을 쉽게 관리합니다. 예를 들어, 처음부터 데이터베이스를 빌드하는 하나의 creation.sql 스크립트. 다른 하나는 수정을 다룹니다.따라서 처음으로 클라이언트가 projet을 전달할 때 클라이언트는 creation.sql 파일을 사용합니다. 그렇지 않으면 update-1.2.1.sql (예 : :) 이것이 다음에 도움이되기를 바랍니다. 문안 인사. –