다음을 통해 공유


SQL Server 2014 또는 SQL Server 2016에서 2017로 업그레이드하는 SQL Server 실패하고 오류 1712를 반환합니다.

이 문서는 데이터베이스 업그레이드 스크립트를 실행하는 동안 SQL Server 2016 또는 SQL Server 2014를 SQL Server 2017 보고서 1712로 업그레이드하는 문제를 해결하고 resolve 데 도움이 됩니다.

증상

다음 오류와 함께 업그레이드 스크립트를 실행하는 ISServer_upgrade.sql 동안 SQL Server 2017 instance 업그레이드하지 못할 수 있습니다.

데이터베이스 엔진 복구 핸들을 기다리지 못했습니다. SQL Server 오류 로그에서 잠재적인 원인을 확인합니다.

SQL Server 오류 로그를 검사 때 다음 오류 항목 중 하나가 표시됩니다.

2020-10-26 10:08:09.94 spid6s      Database 'master' is upgrading script 'ISServer_upgrade.sql' from level 0 to level 500. 
2020-10-26 10:08:09.94 spid6s      --------------------------------------------- 
2020-10-26 10:08:09.94 spid6s      Starting execution of ISServer_upgrade.SQL 
2020-10-26 10:08:09.94 spid6s      --------------------------------------------- 
2020-10-26 10:08:09.94 spid6s        
2020-10-26 10:08:09.94 spid6s      Taking SSISDB to single user mode 
2020-10-26 10:08:09.94 spid6s      Setting database option SINGLE_USER to ON for database 'SSISDB'. 
2020-10-26 10:08:10.47 spid6s      Error: 1712, Severity: 16, State: 1. 
2020-10-26 10:08:10.47 spid6s      Online index operations can only be performed in Enterprise edition of SQL Server. 
2020-10-26 10:08:10.47 spid6s      Error: 917, Severity: 15, State: 1. 
2020-10-26 10:08:10.47 spid6s      An upgrade script batch failed to execute for database 'master' due to compilation error. Check the previous error message for the line which caused compilation to fail. 
2020-10-26 10:08:10.47 spid6s      Error: 912, Severity: 21, State: 2. 
2020-10-26 10:08:10.47 spid6s      Script level upgrade for database 'master' failed because upgrade step 'ISServer_upgrade.sql' encountered error 917, state 1, severity 15. This is a serious error condition which might interfere with regular operation and the database will be taken offline. If the error happened during upgrade of the 'master' database, it will prevent the entire SQL Server instance from starting. Examine the previous errorlog entries for errors, take the appropriate corrective actions and re-start the database so that the script upgrade steps run to completion. 
2020-10-26 10:08:10.48 spid6s      Error: 3417, Severity: 21, State: 3. 
2020-10-26 10:08:10.48 spid6s      Cannot recover the master database. SQL Server is unable to run. Restore master from a full backup, repair it, or rebuild it. For more information about how to rebuild the master database, see SQL Server Books Online. 
2020-10-26 10:08:10.48 spid6s      SQL Server shutdown has been initiated 
2020-10-26 10:08:10.48 spid6s      SQL Trace was stopped due to server shutdown. Trace ID = '1'. This is an informational message only; no user action is required. 
2020-10-26 10:08:10.50 spid15s     The SQL Server Network Interface library successfully deregistered the Service Principal Name (SPN) [ MSSQLSvc/SAFHSQL01.SAFEHAVEN.com ] for the SQL Server service. 
2020-10-26 10:08:10.50 spid15s     The SQL Server Network Interface library successfully deregistered the Service Principal Name (SPN) [ MSSQLSvc/SAFHSQL01.SAFEHAVEN.com:1433 ] for the SQL Server service.

원인

SQL Server 2017년 RTM(제조) 업그레이드 스크립트에는 엔터프라이즈 및 개발자 버전만 이 기능을 지원하지만 모든 버전의 SQL Server 온라인 인덱스 작업을 실행하는 DLL(동적 링크 라이브러리)이 포함되어 있습니다. 데이터베이스 업그레이드 스크립트에 대한 자세한 내용은 업데이트를 적용할 때 업그레이드 스크립트 오류 문제 해결을 참조하세요.

해결 방법

1712 오류를 resolve 다음 단계를 수행합니다.

  1. TF(추적 플래그) 902와 함께 SQL Server 시작합니다. 자세한 내용은 추적 플래그 902를 사용하여 SQL을 시작하는 단계를 참조하세요.

    참고

    이 오류는 이진 파일을 업그레이드한 후 발생하므로 SQL Server 데이터베이스 엔진은 이미 SQL Server 2017 RTM 수준에 있으며 TF 902를 사용하여 instance 시작할 수 있습니다.

  2. 2017 CU5 이상에서 SQL Server SQL Server 빌드를 설치합니다.

  3. 시작 매개 변수에서 TF 902를 제거한 다음 SQL Server 다시 시작합니다.

  4. TF 902 없이 SQL Server 시작되면 업그레이드 스크립트가 다시 실행됩니다.

    • 업그레이드 스크립트가 성공적으로 완료되면 SP(서비스 팩) 또는 CU(누적 업데이트) 업그레이드가 완료됩니다. SQL Server 오류 로그 및 부트스트랩 폴더를 검사 완료된 설치를 확인할 수 있습니다.

    • 업그레이드 스크립트가 다시 실패하면 추가 오류 항목에 대한 SQL Server 오류 로그를 검사 새 오류를 해결합니다.