SQL Server 2005에서 2016으로 데이터 마이그레이션


9

SQL Server를 처음 사용하지만 SQL 언어에 익숙하고 SSIS 패키지를 작성하는 데 익숙합니다.

SQL Server 2005에서 2016으로 데이터를 마이그레이션하고 싶습니다.

내 질문은 시스템 데이터베이스 및 인덱스, 저장 프로 시저,보기, 보안 및 권한과 같은 다른 개체에 대해 걱정해야한다는 것입니다. 로그인하거나 데이터를 마이그레이션 할 수 있습니다.

이 경우 권장되는 절차는 무엇입니까?


프로덕션 인스턴스 를 업그레이드하려고 합니까? 즉, 동일한 로그인, 색인, 저장된 procs 등이 필요합니까? 실제로 귀하의 질문은 매우 광범위합니다. 하시기 바랍니다 투어를 하고 읽을 도움말 센터 좋은 질문을하는 방법을. 감사!
— Max Vernon

답변:


7

Max는이 대체보기를 입력 한 후에 upvote 할 괜찮은 대답을했습니다.

나는 업그레이드 마이그레이션을 수행 할 때 시스템 데이터베이스를 복원하는 팬이 아니며 다른 질문에 대한 긴 답변 에서 논의한 것처럼 업그레이드를 수행하는 것을 선호합니다 .

기본적으로 마이그레이션을 수행 할 때 "새로 고침"을 시작하고 싶습니다. 복원을 통해 시스템 데이터베이스 마이그레이션 및 업그레이드를 수행하면 때로는 복원에 좌절감을 느끼고 잠재적 인 죄를 극복 할 수 있습니다.

인덱스, 저장 프로 시저, 뷰에 대해서도 질문했습니다. 데이터베이스 레벨의 해당 항목은 모두 사용자 데이터베이스 내에 있어야합니다. 따라서 데이터베이스 X를 새 서버로 복원하면 모든 데이터베이스 개체 (테이블, 사용자, 뷰, 프로세서, 함수 등)도 있습니다.

시스템 데이터베이스에는 작업, 로그인, 경고, 연결된 서버, 암호화 키 등이 있습니다. 인스턴스 레벨 항목.

나는 그것들을 검토하고 다양한 스크립트를 사용하여 필요한 것을 마이그레이션하고 싶습니다 . 최근에는 DBATools.Io powershell 스크립트입니다. 나는 스크립트를 사용하여 SQL 로그인 을 복사 하는 것을 좋아 합니다 .SQL 인증 사용자는 암호와 보안 식별자를 동일하게 유지하여 해당 로그인의 데이터베이스 사용자가 작동하기 때문입니다. 또한 일반적으로 복사 할 항목을 복사하기 위해 하위 명령을 실행 하는 전체 SQL Server 마이그레이션 명령 이 있습니다.

나는 Max가 그 대답에 틀렸다고 믿지 않기 때문에 공감대가 아닙니다. 나는 방금 더 많은 성공과 행운을 얻었으며 버전 간 시스템 데이터베이스를 복원하려고 시도하는 대신 새 버전으로 마이그레이션하는 것이 더 편안하다고 생각합니다. 솔직히 마지막으로 버전 업그레이드 마이그레이션을했을 때를 기억하지 못하고 시스템 데이터베이스를 복원하는 대신이 방법으로하지 않았다고 말하고 싶습니다.


답변 주셔서 감사합니다. 2005에서 2016으로 업그레이드하고 싶지 않습니다. 더 이상 SQL Server 2005에서 더 이상 사용하지 않는 인스턴스에서 2016 년에 기존 인스턴스로 데이터베이스를 마이그레이션하려고합니다.이 마이그레이션은 아직 승인되지 않았지만 언제 준비하고 싶습니다. 그렇습니다. 기본적으로 SSIS 패키지를 쿼리하고 만드는 한 SQL 경험이있는 유일한 사람이기 때문에이 프로젝트를 받았습니다. 호환성 문제에 대해서도 우려했습니다. 다시 한번 감사합니다.
— Robert

물론 – 2005 년에서 2016 년으로 이전 할 때 업그레이드를하고 있습니다. 업그레이드 및 마이그레이션을 수행하고 있습니다. 한 버전의 SQL에서 다른 버전의 데이터베이스로 데이터베이스를 가져 오기 때문에 업그레이드가 반드시 필요합니다. 데이터베이스에서 업그레이드 관리자를 실행해야합니다.
— Mike Walsh

SQL Server 2005가 Windows Server 2003 R2 x86에 의해 호스팅되고 SQL Server 2016이 최신 OS에있는 경우 어떻게해야합니까?
— Robert

@ MikeWalsh 나는 당신이 당신의 응답에서 설명한 거의 모든 것에 동의합니다. SQL 업그레이드 / 마이그레이션을 수행 할 때 나도 거의 모든 내용을 따릅니다
— nam

4

해당 데이터베이스에 저장된 메타 데이터에 액세스해야하는 경우 시스템 데이터베이스 (마스터, msdb 및 모델)를 마이그레이션하는 것이 좋습니다.

마스터는 로그인, 보안 인증서 등과 같은 항목을 저장합니다.

msdb에는 백업에 대한 세부 정보가 포함되어 있으며 SQL Server 에이전트 작업 구성과 기타 세부 정보가 저장됩니다.

새로 작성된 빈 데이터베이스에 모든 데이터베이스에서 사용하는 사전 정의 된 오브젝트 세트를 포함 할 수 있도록 모델이 사용자 또는 팀에 의해 사용자 정의되었을 수 있습니다.

시스템 데이터베이스 마이그레이션은 상당히 쉽게 수행 할 수 있습니다. 자세한 지침은 MSDN 의 시스템 데이터베이스 백업 및 복원 (SQL Server)에서 제공 됩니다.

요구 사항 BACKUP DATABASE에 따라 2005 인스턴스의 사용자 데이터베이스에 대해 작업을 수행 한 다음 RESTORE DATABASE2016 인스턴스에서 모든 데이터, 인덱스 및 기타 개체를 포함한 전체 데이터베이스를 가져올 수 있습니다.

최소한 초기에는 2005 인스턴스의 데이터베이스에서 사용하는 것과 동일한 양의 공간이 필요합니다. 그러나 데이터베이스를 복원 한 후에는 데이터 압축을 활용하여 필요한 공간을 크게 줄일 수 있습니다.

참조 SQL 서버 백업 작업에 대한 백업 수행에 대한 자세한 내용 및 소개 시나리오를 복원 복원에 대한 자세한 내용은.


2

2012 년 또는 2016 년입니까? IIRC 2012는 테스트 된 마이그레이션 경로이지만 2016은 그렇지 않습니다. 따라서 알려진 문제는 문서화 및 / 또는 2012 년 업그레이드 관리자에 의해 포착 될 것입니다. 테스트되지 않은 경로는 여전히 문제없이 작동 할 수 있습니다. 즉, 2016 년에 갈 것을 강력히 권장합니다. 노력은 거의 같습니다.

SQL Server 2005에서 업그레이드하고 있습니까?를 참조하십시오 . 2005 업그레이드 옵션 설명서 및 매우 상세한 업그레이드 프로세스 링크. 업그레이드 프로세스는 2014 년에 작성되었지만 2016 년에도 계속 적용됩니다.


1
죄송합니다
— Robert
당사 사이트를 사용함과 동시에 당사의 쿠키 정책과 개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.