문제

현재 호환성 모드 8에서 서버를 실행 중이며 업데이트하고 싶습니다.

  • 그냥 들어가서 바꾸는 것의 의미는 무엇입니까?
  • 깨지기 쉬운 것은 무엇입니까?
  • 수행하기 전에 데이터가 유지되는지 확인하는 것이 있습니까?
  • 복원을 수행하지 않고 데이터 손실 없이 모드 8로 롤백할 수 있습니까?
도움이 되었습니까?

해결책

80에서 90으로 가면 차이가 최소화됩니다.65에서 70+로 변경하면 심각한 영향을 미칠 수 있습니다(NULL은 다르게 저장됨).

시사점 - SPS는 예상 할 것으로 예상되는 것과 다른 결과를 반환 할 수 있습니다.함수, SPS 데이터는 살아 남아야합니다.거기에 있는 어떤 것도 사물에 영향을 주어서는 안 됩니다.
80에서 90으로 이동하고 다시 돌아오는 데는 몇 초 밖에 걸리지 않습니다.네, 앞뒤로 이동할 수 있습니다.

http://msdn.microsoft.com/en-us/library/bb510680.aspx

몇 가지 문제: http://mapamdug.blogspot.com/2006/03/sql-server-2005-gotcha-1.html

다른 팁

  1. 호환성 모드는 저장소에 영향을 주지 않습니다.그것은 단지 깃발일 뿐입니다.데이터나 쿼리에는 아무 것도 변경되지 않습니다.쿼리 실행만 영향을 받습니다.
  2. 아무것도 없거나 많은 것.더 이상 사용되지 않으며 2000년에 삭제될 수 있다고 표시된 구문을 사용했습니까?쿼리에 힌트를 제공할 때 괄호를 사용했나요?쿼리 실행 힌트를 사용하셨나요?그렇다면 먼저 데이터베이스를 수정하고, 사용되지 않는 구문을 제거하고, 괄호를 다시 넣은 다음 BOL을 파헤쳐 새 엔진에서 미세 조정된 쿼리 속도를 늦추는 힌트를 찾는 것이 좋습니다.
  3. 아니요.하지만 데이터는 살아남을 것입니다.실제로, 모드 8에서도 server2005에서 데이터베이스를 실행할 수 있다면 이미 새로운 데이터 형식을 사용하고 있는 것입니다.
  4. 예, 롤백할 수 있습니다.변환하는 것이 아니라 "내 쿼리가 그만큼 호환됩니다"라는 플래그를 설정하는 것뿐입니다.

호환성 모드는 최신 버전의 기능을 비활성화합니다. 개인적으로 저는 문제가 있는 많은 데이터베이스를 실제로 작업해 본 적이 없습니다. 우리 환경에서 가장 문제가 되었던 것은 9로 이동한 후에는 더 이상 Enterprise Manager를 사용하여 볼 수 없다는 것입니다. 데이터 베이스.

백업/복원은 좋은 옵션이며 문제 없이 되돌릴 수도 있다고 생각합니다.

(아무 것도 저장하지 않은 6.5에서 이동하는 경우에만 해당된다고 말했었습니다. char() NULL - 70 이상이면 필드 전체를 사용하므로 크기가 크게 변경될 수 있습니다.)

VBStreets의 주장은 옳았습니다. 그리고 확실히 3번 지점에서는 2005년에 데이터베이스를 처음 실행했을 때 데이터 구조가 변환되었습니다.백업을 하면 호환성 수준에 관계없이 이전 버전으로 복원할 수 없습니다.

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