다음을 통해 공유


SQL Server 2022로 업그레이드할 때 발생하는 문제

적용 대상: SQL Server 2022, SQL Server 2019, SQL Server 2017, SQL Server 2016

이 문서에서는 SQL Server 2022로 업그레이드를 수행할 때 다음과 같은 일반적인 문제를 해결하고 해결하는 단계를 제공합니다.

Always On 환경에서 SQL Server 2022로 업그레이드를 수행할 때 액세스 위반 덤프와 관련된 오류가 발생합니다. 오류 메시지 및 관련 로그 항목은 업그레이드 프로세스 중에 생성된 치명적인 예외를 나타냅니다.

오류 메시지:

예외 코드: c0000005 EXCEPTION_ACCESS_VIOLATION

애플리케이션 이벤트 로그:

Error: A user request from the session with SPID <SPID> generated a fatal exception. SQL Server is terminating this session.
Information: Windows Error Reporting - Fault bucket INVALID_REQUEST, type 0

SQL Server 오류 로그:

Error: A user request from the session with SPID <SPID> generated a fatal exception. SQL Server is terminating this session. Contact Product Support Services with the dump produced in the log directory.

해결 방법:

SQL Server 2022의 LIGHTWEIGHT_QUERY_PROFILING 알려진 문제가 있습니다.

이 문제는 SQL Server 2022의 누적 업데이트 4 및 SQL Server 2019의 누적 업데이트 20에서 해결되었습니다.

해결 방법:

이 문제를 해결하려면 .를 사용하지 않도록 설정합니다 LIGHTWEIGHT_QUERY_PROFILING. 데이터베이스 범위 구성ALTER DATABASE SCOPED CONFIGURATION SET LIGHTWEIGHT_QUERY_PROFILING = OFF;을 사용하여 LIGHTWEIGHT_QUERY_PROFILING 데이터베이스 수준에서 경량 프로파일링을 사용하지 않도록 설정할 수 있습니다.

SQL Server 2022의 비활성 인스턴스로 인해 SQL Server 2022로 업그레이드할 수 없습니다.

원인:

이 문제는 SQL Server의 이전 설치가 실패하여 컴퓨터에 부분적으로 설치된 인스턴스를 남겨 두면 발생합니다. SQL Server 설치 프로그램은 오류가 있는 경우 설치를 자동으로 롤백하지 않습니다. 부분적으로 설치된 인스턴스에는 설치하려는 SQL Server 버전이 포함되어 있지 않으므로 동일한 버전으로 업그레이드하려고 할 때 후속 설치 실패가 발생합니다.

해결 방법:

이 문제를 해결하려면 SQL Server의 부분 설치 제거에 설명된 단계를 따릅니다.

문제 3: 장애 조치(failover) 클러스터 인스턴스가 온라인 상태가 되지 않습니다.

FCI(장애 조치(failover) 클러스터 인스턴스)에서 SQL Server를 이전 버전에서 2022로 업그레이드한 후 인스턴스가 온라인 상태가 되는 데 실패하는 상황이 발생할 수 있습니다. 클러스터 관리자에서 FCI 역할을 확인할 때 인스턴스를 시작할 수 없다는 것을 알 수 있습니다.

가능한 원인:

이 문제의 한 가지 가능한 원인은 SQL Server 인스턴스가 스크립트 업그레이드 모드에 있을 수 있으므로 시작되지 않을 수 있다는 것입니다. 업그레이드 프로세스 중에 SQL Server는 업그레이드 스크립트 실행을 포함하여 원활한 전환을 보장하기 위해 여러 단계를 수행합니다. 인스턴스가 스크립트 업그레이드 모드에서 중단된 경우 온라인 상태가 될 수 없습니다.

해결 방법:

이 문제를 해결하고 SQL Server 인스턴스를 온라인 상태로 만들려면 업데이트를 적용할 때 업그레이드 스크립트 오류 문제 해결의 단계에 따라 실행 중인 업그레이드 스크립트를 무시할 수 있습니다.

참고 항목

-T902 매개 변수는 시작하는 동안 업그레이드 스크립트 실행을 사용하지 않도록 설정합니다.

AG(가용성 그룹)에서 배포 데이터베이스를 호스트하는 컴퓨터에서 SQL Server 2022로 업그레이드할 때 복제와 관련된 오류가 발생합니다.

참고 항목

이 문제는 SQL Server를 버전 2016 SP2 CU3, SQL Server 2017 CU6 이상 버전에서 SQL Server 2019로 업그레이드할 때도 발생할 수 있습니다. 이 문제에 대한 수정 사항은 SQL Server 2019용 누적 업데이트 21에서 사용할 수 있습니다.

오류 메시지:

SQL 설치가 완료되었지만 복제 구성 요소에 대해 "복제 업그레이드 스크립트를 실행하는 동안 오류가 발생했습니다."라는 오류가 표시됩니다. 이 상태의 인스턴스에서 복구를 실행하려고 하면 동일한 오류 메시지가 표시됩니다.

SQL Server 오류 로그:

Executing sp_vupgrade_replication.
Could not open distribution database <distribution_db_name> because it is offline or being recovered. Replication settings and system objects could not be upgraded. Be sure this database is available and run sp_vupgrade_replication again.
Error executing sp_vupgrade_replication.
Saving upgrade script status to 'SOFTWARE\Microsoft\MSSQLServer\Replication\Setup'.

원인:

배포 데이터베이스가 AG의 일부이고 현재 위치 업그레이드를 시도할 때 오류가 발생합니다.

해결 방법:

이 문제에 대한 수정 사항은 SQL Server 2022용 누적 업데이트 5에서 사용할 수 있습니다.

해결 방법:

이 문제를 해결하려면 아래 단계를 수행합니다.

  1. AG에서 배포 데이터베이스를 제거합니다.
  2. SQL Server 2022로 업그레이드를 진행합니다.
  3. 업그레이드를 완료한 후 배포 데이터베이스를 AG에 다시 추가합니다.

자세한 정보