SQL 기록기 서비스
적용 대상: SQL Server - Windows만 해당
SQL 기록기 서비스는 볼륨 섀도 복사본 서비스 프레임워크를 통해 SQL Server의 백업 및 복원을 위한 추가 기능을 제공합니다.
SQL 작성기 서비스는 자동으로 설치됩니다. VSS(볼륨 섀도 복사본 서비스) 애플리케이션이 백업 또는 복원을 요청할 때 실행되어야 합니다. 서비스를 구성하려면 Microsoft Windows 서비스 애플릿을 사용합니다. SQL 기록기 서비스는 모든 Windows 운영 체제에 설치됩니다.
목적
데이터베이스 엔진이 잠기며 데이터베이스 파일에 대한 단독 액세스 권한이 있습니다. SQL 기록기 서비스가 실행되지 않는 경우 Windows에서 실행되는 백업 프로그램은 데이터 파일에 액세스할 수 없으며 네이티브 SQL Server 백업을 사용하여 백업을 수행해야 합니다. SQL 기록기 서비스를 사용하여 SQL Server가 실행되는 동안 Windows 백업 프로그램에서 SQL Server 데이터베이스 파일을 복사할 수 있도록 허용하고 해당 파일에 대한 배타적 잠금을 유지합니다.
볼륨 섀도 복사본 서비스
VSS는 애플리케이션이 해당 볼륨에 계속 쓰는 동안 볼륨 백업을 수행할 수 있도록 프레임워크를 구현하는 COM API 세트입니다. VSS는 디스크에 데이터를 쓰는 사용자 애플리케이션(기록기)과 해당 데이터(요청자)를 백업하는 애플리케이션 간의 조정을 지원합니다.
VSS는 제공하는 서비스의 성능과 안정성을 과도하게 저하하지 않고 실행 중인 시스템, 특히 서버에서 백업할 수 있도록 안정적인 이미지를 캡처하고 복사합니다. VSS에 대한 자세한 내용은 Windows 설명서를 참조하세요.
참고 항목
기본 가용성 그룹을 호스트하는 가상 머신을 백업하기 위해 VSS를 사용할 때, 가상 머신이 현재 보조 상태에 있는 데이터베이스를 호스트하는 경우 SQL Server 2016 (13.x) SP2 CU2 및 SQL Server 2017 (14.x) CU9로 시작하면 해당 데이터베이스가 가상 머신에 백업되지 않습니다. 이는 기본 가용성 그룹이 보조 복제본(replica) 데이터베이스 백업을 지원하지 않기 때문입니다. 이러한 버전의 SQL Server 이전에는 오류가 발생해 백업이 실패했습니다.
가상 백업 디바이스 인터페이스(VDI)
SQL Server는 독립 소프트웨어 공급업체가 SQL Server를 백업 및 복원 제품에 통합할 수 있도록 하는 가상 백업 디바이스 인터페이스(VDI)라는 API를 제공합니다. 이 API는 최고의 안정성과 성능을 제공하도록 설계되었으며, 모든 최신 기능과 스냅샷 백업 기능을 포함하여 모든 SQL Server 백업 및 복원 기능을 지원합니다. 타사 공급업체 애플리케이션이 스냅샷(VSS) 백업을 요청하는 경우 SQL 기록기 서비스는 VDI API 함수를 호출하여 실제 백업을 수행합니다. VDI API는 VSS와 독립적이며, VSS API를 사용하지 않는 소프트웨어 솔루션에서 자주 사용됩니다.
사용 권한
SQL 작성기 서비스는 로컬 시스템 계정으로 실행되어야 합니다. SQL 기록기 서비스는 NT Service\SQLWriter 로그인을 사용하여 SQL Server에 연결합니다. NT Service\SQLWriter 로그인을 사용하면 SQL 기록기 프로세스가 로그인 없음으로 지정된 계정에서 보다 낮은 권한 수준으로 실행될 수 있으므로 취약성이 제한됩니다. SQL 기록기 서비스를 사용하지 않도록 설정하면 VSS 스냅샷 사용하는 모든 유틸리티가 중단될 수 있으며 일관되지 않은 데이터베이스의 백업을 수행할 위험이 있습니다. 예를 들어 System Center Data Protection Manager뿐만 아니라 다른 타사 제품도 있습니다.
SQL 기록기 서비스가 실행되는 시스템인 SQL Server(과)와 호스트 시스템(가상 머신의 경우)에서 Transact-SQL 백업을 제외한 어떤 것도 사용할 필요가 없는 경우 SQL 기록기 서비스를 사용하지 않도록 설정해도 괜찮으며 로그인을 제거해도 됩니다. SQL 기록기 서비스는 시스템 또는 볼륨 수준 백업에서 호출될 수 있습니다. 이때 백업이 직접 스냅샷을 기반으로 하는지 여부는 관계가 없습니다. 일부 시스템 백업 제품은 VSS를 사용하여 열려 있거나 잠긴 파일에 의해 차단되지 않도록 합니다. SQL 기록기 서비스는 작업 과정에서 SQL Server 인스턴스에 대한 모든 I/O를 잠시 중지하므로 SQL Server에서 sysadmin 권한이 필요합니다.
기능
SQL 기록기는 다음을 지원합니다.
- 전체 텍스트 카탈로그를 포함한 전체 데이터베이스 백업 및 복원
- 차등 백업 및 복원
- 복원(이동)
- 데이터베이스 이름 바꾸기
- 복사 전용 백업
- 데이터베이스 스냅샷 자동 복구
SQL 기록기는 다음을 지원하지 않습니다.
- 로그 백업
- 파일 및 파일 그룹 백업
- 페이지 복원
서비스 업그레이드 및 기본 테넌트
SQL 기록기 서비스는 SQL Server 데이터베이스 엔진과 별도의 서비스이며 동일한 서버의 여러 SQL Server 버전 및 인스턴스에서 공유됩니다. SQL 기록기 서비스는 SQL Server 설치 패키지의 일부로 제공되며 제공될 때 SQL Server 엔진과 동일한 버전 번호가 표시됩니다.
SQL Server의 새 인스턴스가 서버에 설치되거나 기존 인스턴스가 업그레이드될 때 인스턴스의 버전 번호가 현재 서버에 있는 SQL 기록기 서비스의 버전 번호보다 높게 업그레이드되거나 설치되는 경우, 해당 파일은 설치 패키지의 파일로 대체됩니다.
SQL 기록기 서비스가 서비스 팩 또는 누적 업데이트에 의해 업데이트되었고 최신 버전의 SQL Server가 설치되는 경우 설치에 더 높은 주 버전이 있으면 최신 버전의 SQL 기록기 서비스를 이전 버전 숫자로 바꿀 수 있습니다. 예를 들어 SQL 기록기 서비스는 SQL Server 2016(13.x) SP2 CU2에서 업데이트되었습니다. 해당 인스턴스가 SQL Server 2017(14.x) RTM으로 업그레이드되면 업데이트된 SQL 기록기 서비스가 이전 버전으로 바뀝니다. 이 경우 최신 버전의 SQL 기록기 서비스를 얻으려면 새 인스턴스에 최신 CU를 적용해야 합니다.