다음을 통해 공유


로그 전달을 사용하여 SQL Server 업그레이드(Transact-SQL)

적용 대상:SQL Server

로그 전달 재해 복구 솔루션을 유지하려면 적절한 순서로 서비스 업데이트를 업그레이드하거나 적용합니다. 서비스 업데이트에는 서비스 팩 또는 누적 업데이트가 포함됩니다.

비고

업그레이드된 로그 전달 구성은 서버 수준 구성 옵션을 사용하여 backup compression default 트랜잭션 로그 백업 파일에 백업 압축 이 사용되는지 여부를 제어합니다. 각 로그 전달 구성에 대한 로그 백업의 백업 압축 동작을 지정할 수 있습니다. 자세한 내용은 로그 전달 구성(SQL Server)을 참조하세요.

필수 조건

시작하기 전에 다음 중요한 정보를 검토합니다.

문서 Description
지원되는 버전 및 버전 업그레이드 기존 Windows 운영 체제 및 SQL Server 버전에서 원하는 버전의 SQL Server로 업그레이드할 수 있는지 확인합니다. 예를 들어 SQL Server 2005(9.x) 인스턴스에서 SQL Server 2025(17.x)로 직접 업그레이드할 수 없습니다.
데이터베이스 엔진 업그레이드 방법 선택 지원되는 버전 및 버전 업그레이드 검토에 따라 적절한 업그레이드 방법 및 단계를 선택합니다. 또한 사용자 환경에 설치된 다른 구성 요소를 사용하여 구성 요소를 올바른 순서로 업그레이드하는 것이 좋습니다.
데이터베이스 엔진 업그레이드 계획 및 테스트 릴리스 정보 및 알려진 업그레이드 문제, 업그레이드 전 검사 목록을 검토하고 업그레이드 계획을 개발하고 테스트합니다.
SQL Server 설치를 위한 하드웨어 및 소프트웨어 요구 사항 SQL Server 설치에 대한 소프트웨어 요구 사항을 검토합니다. 다른 소프트웨어가 필요한 경우 업그레이드 프로세스를 시작하기 전에 각 노드에 설치하여 가동 중지 시간을 최소화합니다.
SQL Server 2022(16.x)에 추가된 포함된 가용성 그룹 지원 로그 전달과 함께 포함된 가용성 그룹을 사용하려면 로그 전달 토폴로지를 삭제하고 다시 만들어야 합니다. 그러나 로그 전달과 함께 포함된 가용성 그룹을 이미 사용하고 있는 경우 업그레이드가 지원됩니다.
SQL Server 2025에 추가된 TDS 8.0 지원(17.x) SQL 2025 이상 버전에서 로그 전달과 함께 TDS 8.0을 사용하려면 먼저 기존 로그 전달 구성을 제거해야 합니다.

업그레이드하기 전에 데이터 보호

로그 전달 업그레이드 중에 데이터를 보호하려면 다음 단계를 수행합니다.

  1. 모든 주 데이터베이스에서 전체 데이터베이스 백업을 수행합니다.

    자세한 내용은 전체 데이터베이스 백업 만들기(SQL Server)를 참조하세요.

  2. 모든 주 데이터베이스에서 DBCC CHECKDB 명령을 실행합니다.

중요합니다

주 서버가 보조 서버의 업그레이드가 진행되는 동안 로그 백업 복사본을 저장할 충분한 공간이 있는지 확인하세요. 보조 복제본으로 장애 조치(failover)하는 경우 보조 데이터베이스(새 주 복제본)에도 이와 동일한 문제가 적용됩니다.

(선택 사항) 모니터 서버 인스턴스 업그레이드

언제든지 모니터 서버 인스턴스(있는 경우)를 업그레이드할 수 있습니다. 그러나 기본 및 보조 서버를 업그레이드할 때는 선택적 모니터 서버를 업그레이드할 필요가 없습니다.

모니터 서버를 업그레이드하는 동안 로그 전달 구성은 계속 작동하지만 해당 상태는 모니터의 테이블에 기록되지 않습니다. 구성된 경고는 모니터 서버를 업그레이드하는 동안 트리거되지 않습니다. 업그레이드 후에는 sp_refresh_log_shipping_monitor 시스템 저장 프로시저를 실행하여 모니터 테이블의 정보를 업데이트할 수 있습니다. 모니터 서버에 대한 자세한 내용은 로그 전달 정보(SQL Server)를 참조하세요.

보조 서버 인스턴스 업그레이드

업그레이드 프로세스에는 주 서버 인스턴스를 업그레이드하기 전에 SQL Server의 보조 서버 인스턴스를 업그레이드하는 작업이 포함됩니다. 항상 보조 SQL Server 인스턴스를 먼저 업그레이드합니다. 업그레이드된 보조 서버 인스턴스가 주 서버 인스턴스에서 로그 백업을 계속 복원하기 때문에 업그레이드 프로세스 전체에서 로그 전달이 계속됩니다.

보조 서버 인스턴스 이전에 주 서버 인스턴스를 업그레이드하는 경우 최신 버전의 SQL Server에서 만든 백업을 이전 버전의 SQL Server에서 복원할 수 없으므로 로그 전달이 실패합니다. 보조 인스턴스를 동시에 또는 직렬로 업그레이드할 수 있지만 로그 전달 오류를 방지하려면 주 인스턴스를 업그레이드하기 전에 모든 보조 인스턴스를 업그레이드해야 합니다.

보조 서버 인스턴스를 업그레이드하는 동안 로그 전달 복사 및 복원 작업이 실행되지 않습니다. 이 조건은 복원되지 않은 트랜잭션 로그 백업이 주 복제본에 누적된다는 것을 의미하며, 이러한 복원되지 않은 백업을 저장할 충분한 공간이 있어야 합니다. 누적량은 주 서버 인스턴스에서 예약된 백업 빈도 및 보조 인스턴스를 업그레이드하는 순서에 따라 달라집니다. 또한 별도의 모니터 서버가 구성된 경우 복원이 구성된 간격보다 오랫동안 수행되지 않았음을 나타내는 경고가 발생할 수 있습니다.

보조 서버 인스턴스를 업그레이드하면 로그 전달 에이전트 작업이 다시 시작되고 주 서버 인스턴스에서 보조 서버 인스턴스로 로그 백업을 계속 복사하고 복원합니다. 보조 서버 인스턴스가 보조 데이터베이스를 최신 상태로 설정하는 데 필요한 시간은 보조 서버 인스턴스를 업그레이드하는 데 걸린 시간과 주 서버의 백업 빈도에 따라 달라집니다.

서버 업그레이드 중에 보조 데이터베이스 자체는 새 버전으로 업그레이드되지 않습니다. 로그 전달 데이터베이스의 장애 조치(failover)를 시작하여 온라인 상태로 전환된 경우에만 업그레이드됩니다. 이론적으로, 이 조건은 무기한 지속될 수 있습니다. 장애 조치(failover)가 시작될 때 데이터베이스 메타데이터를 업그레이드하는 시간은 작습니다.

중요합니다

업그레이드가 필요한 데이터베이스에는 이 RESTORE WITH STANDBY 옵션이 지원되지 않습니다. 업그레이드된 보조 데이터베이스를 사용하여 RESTORE WITH STANDBY구성한 경우 업그레이드 후 트랜잭션 로그를 더 이상 복원할 수 없습니다. 해당 보조 데이터베이스에서 로그 전달을 다시 시작하려면 해당 대기 서버에서 로그 전달을 다시 설정해야 합니다. 이 옵션에 대한 STANDBY 자세한 내용은 트랜잭션 로그 백업 복원(SQL Server)을 참조하세요.

주 서버 인스턴스 업그레이드

로그 전달은 주로 재해 복구 솔루션이므로 가장 간단하고 일반적인 시나리오는 기본 인스턴스를 현재 위치로 업그레이드하는 것입니다. 이 업그레이드 중에 데이터베이스를 사용할 수 없습니다. 서버가 업그레이드되면 데이터베이스가 자동으로 다시 온라인 상태가 되어 업그레이드됩니다. 데이터베이스가 업그레이드되면 로그 전달 작업이 다시 시작됩니다.

로그 전달은 장애 조치(failover)로 로그 전달 보조 서버로 전환, 그리고 필요에 따라 주 서버와 보조 서버 간 역할 변경 옵션도 지원합니다.

그러나 로그 전달은 더 이상 고가용성 솔루션으로 구성되지 않으므로(최신 옵션은 훨씬 더 강력함), 장애 조치(failover)는 일반적으로 가동 중지 시간을 최소화하지 않습니다. 시스템 데이터베이스 개체는 동기화되지 않으며 클라이언트가 승격된 보조 데이터베이스를 쉽게 찾고 연결할 수 있도록 하는 것은 어려울 수 있습니다.