2016-08-19 2 views
0

현재 Redgate SQL Comparison SDK로 작업 중이며 2 개의 데이터베이스를 멋지게 비교하도록 설정되어 있습니다.Redgate 비교 SDK 소스 제어 소스 데이터베이스

대상 데이터베이스를 사용하여 소스 제어에서 sqlproj를 차별화 할 수 있습니다.

tfs/vsts SDK를 사용하여 sql 파일을 가져 오려고했으나 아무 소용이 없었습니다.

소스 제어에서 dacpac으로 sqlproj를 빌드 한 다음 소스 데이터베이스로 가져 오거나 소스로 sqlproj를 직접 가져올 수있는 방법이 있습니까?

편집 :

이 나의 궁극적 인 목표는 기본적으로 차이점에 대한 delpoyment 스크립트를 데이터베이스가 많은 다른 환경에서 실행하는 소스 제어에있는 데이터베이스의 버전을 비교하고 만들 수있을 것입니다 .

이 두 가지 Redgate 도구 (SQL은 & SQL Source를 비교)를 가지고 있지만 이것들은 1 (어쩌면 2 최대?) 장치에만 설치할 수 있습니다. 어려움은 Amazon RDS를 사용하는 것입니다 엔드 포인트가 VPC 외부에 도달 할 수없는 경우) 이러한 도구의 중앙 설치를 모든 환경에 연결할 수 없으며 모든 환경에 대해 추가 라이센스를 구매할 수 없습니다. 그래서 필자는 비교 SDK를 사용하여 "내 자신의 역할"을 시도하려고했습니다.

감사합니다.

답변

2

또한 Redgate에서 일하고 있습니다. 특정 질문에 대한 자세한 내용을 보려면 [email protected]을 통해 저에게 전자 메일을 보내주십시오. 그러면 전화를드립니다.

일반적으로 Redgate가 아래에서 수행하는 작업에 대해 권장하는 프로세스는 모든 데이터베이스가 버전 제어에서 갖기를 원하는 정규 스키마를 유지하는 것입니다. SQL Source Control 제품을 사용하는 각 개발자가 해당 스키마를 개발할 때 SSMS에서 변경 사항을 가져 오거나 SQL Compare 제품을 사용하여 스프린트의 끝 부분에 버전을 넣을 수 있습니다.

그런 다음 DLM Automation 도구를 CI 서버와 함께 사용하여 대상 서버에 대한 차이점 보고서 및 동기화 스크립트를 자동화 할 수 있습니다. DLM Automation은 TeamCity, Jenkins, VSTS, TFS 등과 같은 일반적인 CI 서버용 PowerShell 커맨드 릿 및 플러그인 세트입니다. SQL Compare Pro 명령 줄을 사용할 수도 있습니다.

전체 팀에 SQL Toolbelt 제품이있는 경우 빌드/릴리스 에이전트에서 원하는만큼 DLM 자동화 도구를 설치할 수있는 라이센스가 있으므로 환경 당 추가 라이센스가 필요하지 않습니다.

+0

안녕하세요 존, 답변 해 주셔서 감사합니다. 나는 더 구체적인 질문을 통해 이메일을 보내 겠지만, 이것이 내가 가야 할 방식 일 수있는 것처럼 들린다. – Uberzen1

1

자동화 빌드/ci 시스템의 맥락에서이 작업을 수행하고 있습니까? VSTS에 대해 언급 했으므로 정상적으로 작동하는 방식은 이미 소스 제어에서 파일을 가져온 것입니다. 파일이 빌드 에이전트의 작업 폴더에 있으면 SDK (또는 SQL Compare 명령 줄)를 가리켜 야합니다. 많은 경우에 작동하지만 sql proj는 공식적으로 지원되는 Redgate 도구의 데이터 소스가 아닙니다.

우리가 (내가 Redgate에서 일하는) 더 적합한 도구 또는 기법을 추천 할 수있는 경우에 대비하여 질문을 편집하고 해결하려는 상위 수준의 문제에 대한 배경 지식을 제공하면 좋을 것입니다.

+0

안녕하세요. David, 다시 연락해 주셔서 고맙습니다. 제 질문에 대한 추가 정보를 추가했습니다. – Uberzen1

+1

감사합니다. Redgate의 DLM 자동화 리소스가 문제를 해결할 수있는 것 같습니다. 이 방법은 각 빌드 에이전트에 클라이언트 도구를 설치하는 것보다 깔끔합니다. 내 동료 (DLM Automation의 제품 관리자) Jon은이 효과에 대한 답변을 게시했습니다. –