확장 가능 공유 데이터베이스 분리

보고 데이터가 너무 오래되어 더 이상 유용하지 않게 되면 해당 보고 데이터베이스를 유효하지 않은 데이터베이스라고 합니다. 확장 가능 공유 데이터베이스를 업데이트하려면 분리 단계에서 시작되는 3단계 업데이트 주기를 수행해야 합니다. 기본적으로 분리 단계에서는 유효하지 않은 보고 데이터베이스를 분리하고 보고 서버에서 보고 볼륨을 분리합니다. 지정된 서버 인스턴스에서 분리되면 유효하지 않은 보고 데이터베이스는 해당 서버 인스턴스에서 더 이상 확장 가능 공유 데이터베이스가 아닙니다.

분리 단계

이 단계에서는 각 보고 서버에 대해 다음 작업을 수행합니다.

  1. 필요에 따라 데이터베이스에서 새 쿼리를 해제하고 현재 쿼리가 적절하게 완료될 수 있게 합니다. 자세한 내용은 이 항목의 뒤에 나오는 "유효하지 않은 보고 데이터베이스 분리 준비"를 참조하십시오.

  2. 각 서버 인스턴스에서 데이터베이스를 분리합니다.

    다음 Transact-SQL 문을 사용하여 이 작업을 수행할 수 있습니다.

    sp_detach_db @dbname='<database_name>'
    

    여기서 <database_name>은 데이터베이스 이름입니다.

  3. 각 보고 서버의 보고 볼륨 세트를 분리합니다.

    DiskPart 유틸리티를 사용하여 볼륨을 분리하려면 명령 프롬프트에서 다음 명령을 입력합니다.

    DiskPart

    DISKPART> select volume=<drive-number>

    DISKPART> remove

    DISKPART> exit

    여기서 <drive-letter>는 보고 볼륨에 할당된 문자입니다. 데이터베이스에 여러 개의 보고 볼륨이 사용되는 경우 각 볼륨에 대해 이 단계를 수행하십시오.

  4. 하드웨어 공급업체의 유틸리티를 사용하여 보고 볼륨에 해당하는 LUN(Logical Unit Number)에 마스크를 설정함으로써 보고 서버에서 해당 볼륨을 숨깁니다. 데이터베이스에 여러 개의 보고 볼륨이 사용되는 경우 각 볼륨에 대해 이 단계를 수행하십시오.

[!참고]

분리 단계는 지정된 보고 볼륨 세트에 대한 업데이트 주기의 첫 번째 단계입니다. 그러나 보고 데이터베이스의 유효하지 않은 버전과 새 버전을 위해 두 개의 대체 보고 볼륨 세트를 사용할 수 있습니다. 이 경우 두 볼륨 세트의 분리 및 업데이트 단계가 겹치도록 할 수 있습니다. 자세한 내용은 확장 가능 공유 데이터베이스의 가용성 최대화를 참조하십시오.

유효하지 않은 보고 데이터베이스 분리 준비

유효하지 않은 데이터베이스 버전을 바꿀 때는 보고 환경에 대한 비즈니스 요구 사항을 고려하는 것이 중요합니다. 비즈니스 요구 사항을 평가하여 현재 실행 중인 쿼리가 완료될 수 있도록 해야 하는지 또는 가능한 한 빨리 업데이트를 완료해야 하는지를 결정해야 합니다.

어떤 요구 사항이 더 중요한지에 따라 각 보고 서버의 분리 단계 관리 방법을 결정할 수 있습니다.

  • 쿼리가 완료될 수 있도록 하는 경우

    진행 중인 모든 쿼리를 유지하려면 분리 단계에서 먼저 I/O 작업을 중지하는 등의 방법으로 데이터베이스에 대한 트랜잭션의 흐름을 중지합니다. 그런 다음 각 서버 인스턴스에서 현재 쿼리가 모두 완료될 때까지 기다립니다. 데이터베이스가 모든 서버 인스턴스에서 분리되면 보고 볼륨을 분리할 수 있습니다.

  • 가능한 한 빨리 데이터베이스를 업데이트하는 경우

    업데이트를 빨리 완료하려면 즉시 또는 지정된 시간(초) 후에 쿼리를 종료하여 각 서버 인스턴스의 데이터베이스에 배타적으로 액세스합니다. 종료된 쿼리는 새로 고친 버전의 데이터베이스를 연결한 후 다시 시작할 수 있습니다.

    예를 들어 60초 동안 현재 쿼리가 완료되기를 기다린 후 나머지 쿼리를 종료하는 경우 다음 Transact-SQL 문을 사용합니다.

    USE master;
    ALTER DATABASE AdventureWorks2008R2
    SET SINGLE_USER
    WITH ROLLBACK AFTER 60;
    GO
    

    이제 각 서버 인스턴스에서 데이터베이스를 분리하고 각 보고 서버에서 보고 볼륨을 분리할 수 있습니다.

자세한 내용은 ALTER DATABASE(Transact-SQL)를 참조하십시오.

이때 분리된 보고 볼륨 세트는 다음 업데이트 주기의 작성 또는 새로 고침 단계를 수행할 준비가 되어 있습니다.

또는 현재 마운트된 보고 볼륨 세트에서 분리 단계를 시작하기 전에 대체 보고 볼륨 세트의 데이터베이스를 새로 고칠 수 있습니다. 자세한 내용은 확장 가능 공유 데이터베이스의 가용성 최대화를 참조하십시오.