2010-11-25 3 views
1

두 개의 dev 환경 (하나는 로컬 서버에, 다른 하나는 로컬 서버에 비해 더 많은 메모리가 필요할 수있는 클라우드 서비스 공급자에 설치됩니다)를 설정하고 있습니다.당신은 어떻게 동기화 된 상태로 유지되어야하는 별도의 개발 환경을 유지합니까?

두 환경이 항상 완전히 동기화되도록하려면 어떻게해야합니까? 저는 중앙 집중식으로 응용 프로그램을 배포하고 SQL Server 데이터베이스를 동기화하는 도구를 사용하고 Sharepoint 서버를 동기화 상태로 유지하는 두 가지 환경 (예 : 두 환경)간에 동기화 도구를 사용하는 방법을 모색 중입니다. 이것을 달성하는 데 도움이 될 다른 것이 있습니까?

감사

답변

1

이에서는 SharePoint 개발을위한 매우 까다로운 문제입니다.

SQL 서버가 실행되는 한 (비 SharePoint 항목의 경우) SQL Server에 제공된 도구를 사용하여 데이터베이스를 동기화 할 수 있습니다. 예를 들어 데이터베이스 복사 마법사를 사용하거나 사용자 지정 작업을 수행해야하는 경우 사용자 고유의 SSIS 패키지를 작성할 수도 있습니다.

SharePoint는 다른 문제입니다. 데이터베이스를 복사하는 것만으로 사이트 모음/웹 응용 프로그램을 한 서버에서 다른 서버로 동기화 할 수는 없지만 작동하지 않습니다 (여러 가지 이유가 있지만 대부분 서버에서 웹 응용 프로그램을 만들면 GUID는 응용 프로그램 ID로 사용됩니다.이 GUID는 데이터베이스의 모든 곳에서 사용되며 테이블간에 연결되는 모든 링크는 변경하려고하면 끊어집니다. SharePoint 데이터베이스의 구조는 문서화되어 있지 않으므로 수동으로 수정하지 않는 것이 좋습니다. 그리고 솔직히 SQL 서버에서 데이터베이스를 바로 동기화 할 수 있다고하더라도 모든 사용자 정의가 데이터베이스에 저장되는 것은 아니기 때문에 다른 문제가 발생할 수 있습니다. 많은 것들이 12 개의 하이브에 들어갑니다.

그래서 당신이 성취하고자하는 것에 달려 있습니다.

코딩 된 맞춤 설정 (예 : 콘텐츠 유형, 목록 템플릿, 웹 파트 등)을 동기화하려고하는 경우. 개발 환경에서 WSP 패키지를 작성하고 동기화해야 할 때마다 배포하는 것이 좋습니다.

데이터 (목록 항목) 만 동기화하려는 경우 백업/복원 솔루션을 사용할 수 있습니다 (중앙 관리에서 찾을 수 있습니다). 사용자 정의가있는 경우 지나치게 안정적이지는 않습니다. 상자 밖의 사이트에서도 정상적으로 작동하지만 자신의 목록 템플릿 등을 사용하면 복원하는 것이 까다로울 수 있습니다.

web services 또는 Content Deployment API을 사용하여 동기화 할 코드를 작성하고 필요에 맞게 확인하십시오.

작업의 전부 또는 일부를 수행 할 도구를 살펴볼 수도 있습니다. Here is one

근본적으로, 당신이 그것을하기로 결심해도 그것이 예상했던 것처럼 간단하지 않을 것입니다. DEV/TEST/PROD 환경 동기화 문제는 SharePoint 개발의 고전입니다.

나는 고도의 사용자 정의 SharePoint 웹 응용 프로그램 작업을 우리가 볼 수있는 가장 좋은 방법은에 있었다 :

  • 는 매우 우리의 코드에 징계 : 코드를 통해 모든 사용자 지정을 수행하고 코드 WSP 패키지를 구축 할 수 있습니다. SharePoint 디자이너 없음. SharePoint 디자이너로 페이지를 사용자 지정하면 아무 것도 동기화 할 수 없습니다.웹 서비스
+0

이 아주 좋은 대답을 사용하는 서버 사이

  • 동기화 목록. 감사! – dotnetdev

  • 관련 문제