문제

SQL Server 2008에서 데이터베이스를 백업 한 다음 SQL Server 2005로 가져 오는 문제가 있습니까? SQL Server 2008로 업그레이드했지만 2008 년은 너무 문제가있는 것처럼 보이므로 이제 다운 그레이드를하고 싶습니다. 이 작업에 문제가 있습니까?

도움이 되었습니까?

해결책

글쎄, 당신은 2008 백업을 SQL 2005 서버로 복원 할 수 없습니다.

가장 쉬운 방법은 "SQL Server Scripts Generate"마법사를 사용하여 SQL 2005에서 실행하여 데이터베이스를 작성할 수있는 스크립트 (스키마 및 데이터 포함)를 작성하는 것입니다. 보다 http://www.devx.com/dbzone/article/40531

그러나 원래의 문제로 돌아 가기 : SQL 2008에서 어떤 문제가 있습니까?

다른 팁

이 작업을 수행하는 다른 방법은 객체 탐색기를 통해 두 서버에 연결하고 데이터를 하나에서 다른 곳으로 가져 오는 것입니다.

그러나이 작업을 수행 할 때 일부는 올바르게 전송되지 않습니다. 예를 들어, 기본 및 외국 키 설정과 자동 점수 설정을 수동으로 재설정해야했습니다. 그러나 모든 데이터가 작동하는 데 필요한 비용이 적은 가격이었습니다.

나는 문제가 무엇인지 동의 할 것입니까? 애플리케이션에 관한 것이라면 SQL 2005 호환성 모드에서 데이터베이스를 실행할 수 없습니까? 2005 년으로 이동 해야하는 경우 데이터베이스를 08에서 05로 복원 할 수 없습니다.

50MB 이상의 DB가있는 경우 스크립트 생성 마법사를 사용하여 데이터베이스 스키마를 스크립트하고 데이터가없는 모든 키, 인덱스, 트리거, 콜라이트 및 전체 텍스트 지수를 스크립트합니다. SQL 2005 버전 옵션의 스크립트를 확인하십시오. SQL Server 2005에서 새 데이터베이스를 작성하려면 해당 스크립트를 실행하십시오.

테이블에 트리거가있는 경우 데이터를 가져 오기 전에 테이블을 모두 비활성화하려고합니다. 이 스크립트는 당신을 위해 그렇게 할 것입니다. 이것들은 당신을 위해 그렇게 할 것입니다

-- Disable Triggers
While @i <= @MaxI
Begin
      Select @dsql =  'DISABLE Trigger ' + TriggerName + ' ON ' + TableName
      From @DisableTriggers
      Where MyRowCount = @i
      Exec sp_executesql @dsql
      Select @i = @i + 1
End

-- Enable Triggers
While @i <= @MaxI
Begin
      Select @dsql =  'Enable Trigger ' + TriggerName + ' ON ' + TableName
      From @DisableTriggers
      Where MyRowCount = @i
      Exec sp_executesql @dsql
      Select @i = @i + 1
End

그런 다음 가져 오기 / 내보내기 마법사를 사용하여 데이터를 데이터베이스로 가져옵니다. 이것은 내 경험에서 스크립트 아웃 스크립트보다 훨씬 빠릅니다.

SQL Server 2008에서 가져온 SQL Server 데이터베이스 백업을 복원 할 수 없으며 Microsoft에서 지원하지 않으므로 SQL Server 2005에서 복원 할 수 없습니다. 더 높은 버전에서 하위 버전으로 데이터베이스를 복원 할 수없는 이유를 더 알기 위해 다음을 읽으십시오. 기사. 데이터베이스를 다운 그레이드하려면 사용하면 SQL Server 통합 서비스를 사용할 수 있습니다. SQL Server 2008 데이터베이스를 SQL Server 2005로 다운 그레이드하는 예는 다음에 언급되어 있습니다. 기사.

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