문제

건물 및 유지 보수를 구축하고 유지하는 데 더 많은 Devs가 더 많은 Devs가 항상 소프트웨어 개발에서 계속되는 것입니다. 우리는 빌드 스크립트를 생성하고 시간이 지남에 따라 데이터베이스가 커짐에 따라 적용되는 추가 업데이트 스크립트를 유지 관리합니다. 수동 업데이트에서 이러한 프로세스를 자동화하는 데 도움이되는 콘솔 앱 / 빌드 스크립트로이를 관리하는 방법은 여러 가지가 있습니다.

이 프로세스를 구축 / 관리 한 사람은 데이터베이스 스키마 관리를위한 소스 제어 솔루션으로 이동 했습니까? 그렇다면 가장 좋은 해결책을 찾은 것이 무엇입니까? 피해야하는 함정이 있습니까?

레드 게이트는 MSSQL 세계에서 큰 플레이어 인 것처럼 보이며 DB 소스 컨트롤은 매우 흥미로워 보입니다. http://www.red-gate.com/products/solutions_for_sql/database_version_control. htm

(기본값) 데이터 * 관리 프로세스를 대체하는 것처럼 보이지 않으므로 변경 관리 프로세스의 절반 만 POV에서만 대체합니다.

(데이터에 대해 이야기 할 때, 나는 조회 가치와 그 일종의 것을 의미합니다, 기본적으로 배포 해야하는 데이터 또는 DR 시나리오에서 배포 해야하는 데이터)

우리는 .NET / MSSQL 환경에서 작동하지만 전제가 모든 언어에 걸쳐 동일합니다.

다른 팁

나는 내가 일하는 은행에 의해 사내 사내에서 개발 된 데이터웨어 하우스를 돌보아 보입니다. 이를 위해서는 끊임없는 업데이트가 필요하며 2-4 개 Dev가 작업하는 팀이 있습니다.

우리는 "제품"의 인스턴스 만 있기 때문에 우리는 운이 좋기 때문에 다른 버전에있을 수있는 여러 인스턴스에 배포 할 필요가 없습니다.

데이터베이스의 각 개체 (테이블, 뷰, 인덱스, 저장 프로 시저, 트리거)에 대한 생성 스크립트 파일을 유지합니다.

가능한 경우 ALTER TABLE를 사용하지 않으므로 테이블의 이름을 바꾸고 새 파일을 만들고 데이터를 마이그레이션하는 것을 좋아합니다. 즉, ALTER 스크립트의 기록을 살펴볼 필요가 없음을 의미합니다. 우리는 Create 스크립트를보고 모든 테이블의 최대 최신 버전을 볼 수 있습니다. 마이그레이션은 별도의 마이그레이션 스크립트로 수행됩니다. 이는 부분적으로 자동 생성 될 수 있습니다.

릴리스를 수행 할 때마다 스크립트 / 마이그레이션 스크립트 작성을 적절한 순서로 실행하는 스크립트가 있습니다.

FYI : 우리는 소스 코드 제어를 위해 Visual SourceSafe (Yuck!)를 사용합니다.

SQL Server 소스 제어 도구를 찾고 있었고 SQL Server Management Studio를 플러그인으로 사용하는 많은 프리미엄 버전을 발견했습니다.

Liquibase는 무료 하나이지만 나는 결코 내 필요를 위해 일하고 있지 않습니다.

SSMS와 스크립트가 객체와 데이터를 플랫 파일로 스크립트로 사용하는 또 다른 무료 제품이 있습니다.

이 객체를 새 SQL Server 인스턴스로 펌핑하여 데이터베이스 개체를 다시 만듭니다.

gitsql

Liquibase ?

를 묻는 메시지가 어떨까요?

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top