SQL Server 빅 데이터 클러스터의 마스터 인스턴스에 데이터베이스 복원

적용 대상: SQL Server 2019(15.x)

이 문서에서는 SQL Server 2019 빅 데이터 클러스터의 마스터 인스턴스에 기존 데이터베이스를 복원하는 방법을 설명합니다. 권장되는 방법은 백업, 복사, 복원 방법을 사용하는 것입니다.

Important

Microsoft SQL Server 2019 빅 데이터 클러스터 추가 기능이 사용 중지됩니다. SQL Server 2019 빅 데이터 클러스터에 대한 지원은 2025년 2월 28일에 종료됩니다. Software Assurance를 사용하는 SQL Server 2019의 모든 기존 사용자는 플랫폼에서 완전히 지원되며, 소프트웨어는 지원 종료 시점까지 SQL Server 누적 업데이트를 통해 계속 유지 관리됩니다. 자세한 내용은 공지 블로그 게시물Microsoft SQL Server 플랫폼의 빅 데이터 옵션을 참조하세요.

기존 데이터베이스를 백업합니다.

먼저 Windows 또는 Linux의 SQL Server에서 기존 SQL Server 데이터베이스를 백업합니다. Transact-SQL 또는 SSMS(SQL Server Management Studio) 같은 도구를 사용하여 표준 백업 기술을 사용합니다.

이 문서에서는 AdventureWorks 데이터베이스를 복원하는 방법을 보여주지만 어떤 데이터베이스 백업이든 사용할 수 있습니다.

AdventureWorks 백업을 다운로드합니다.

백업 파일 복사

Kubernetes 클러스터의 마스터 인스턴스 Pod에 있는 SQL Server 컨테이너에 백업 파일을 복사합니다.

kubectl cp <path to .bak file> master-0:/var/tmp/<.bak filename> -c mssql-server -n <name of your big data cluster>

예시:

kubectl cp ~/Downloads/AdventureWorks2022.bak master-0:/var/tmp/AdventureWorks2022.bak -c mssql-server -n clustertest

백업 파일이 Pod 컨테이너에 복사되었는지 확인합니다.

kubectl exec -it master-0 -n <name of your big data cluster> -c mssql-server -- bin/bash
cd /var/
ls /tmp
exit

예시:

kubectl exec -it master-0 -n clustertest -c mssql-server -- bin/bash
cd /var/
ls /tmp
exit

백업 파일 복원

다음으로, 데이터베이스 백업을 SQL Server 마스터 인스턴스로 복원합니다. Windows에서 만든 데이터베이스 백업을 복원하는 경우 파일 이름을 가져와야 합니다. Azure Data Studio에서는 마스터 인스턴스에 연결하고 다음 SQL 스크립트를 실행합니다.

RESTORE FILELISTONLY FROM DISK='/tmp/<db file name>.bak'

예시:

RESTORE FILELISTONLY FROM DISK='/tmp/AdventureWorks2022.bak'

Backup file list

이제 데이터베이스를 복원합니다. 다음 스크립트는 예제입니다. 데이터베이스 백업에 따라 필요한 대로 이름/경로를 바꿉니다.

RESTORE DATABASE AdventureWorks2022
FROM DISK='/tmp/AdventureWorks2022.bak'
WITH MOVE 'AdventureWorks2022_Data' TO '/var/opt/mssql/data/AdventureWorks2022_Data.mdf',
        MOVE 'AdventureWorks2022_Log' TO '/var/opt/mssql/data/AdventureWorks2022_Log.ldf',
        MOVE 'AdventureWorks2022_mod' TO '/var/opt/mssql/data/AdventureWorks2022_mod'

데이터 풀 및 HDFS 액세스 구성

이제 SQL Server 마스터 인스턴스가 데이터 풀 및 HDFS에 액세스하려면 데이터 풀 및 스토리지 풀 저장 프로시저를 실행합니다. 새로 복원된 데이터베이스에 대해 다음 Transact-SQL 스크립트를 실행합니다.

USE AdventureWorks2022;
GO
-- Create the SqlDataPool data source:
IF NOT EXISTS(SELECT * FROM sys.external_data_sources WHERE name = 'SqlDataPool')
  CREATE EXTERNAL DATA SOURCE SqlDataPool
  WITH (LOCATION = 'sqldatapool://controller-svc/default');

-- Create the SqlStoragePool data source:
IF NOT EXISTS(SELECT * FROM sys.external_data_sources WHERE name = 'SqlStoragePool')
   CREATE EXTERNAL DATA SOURCE SqlStoragePool
   WITH (LOCATION = 'sqlhdfs://controller-svc/default');
GO

참고 항목

이전 버전의 SQL Server에서 복원된 데이터베이스에 대해서만 이러한 설치 스크립트를 실행해야 합니다. SQL Server 마스터 인스턴스에서 새 데이터베이스를 만드는 경우 데이터 풀 및 스토리지 풀 저장소 프로시저는 이미 구성되어 있습니다.

다음 단계

SQL Server 빅 데이터 클러스터 대한 자세한 내용은 다음 개요를 참조하세요.