掛載 Microsoft SQL Server 資料庫或加密的 SQL 資料

本節說明如何掛載已擷取的 Microsoft SQL 伺服器:

  • 執行個體
  • Always On 可用性群組的主要資料庫
  • 一致性群組
  • 一致性群組的個別成員
  • 系統資料庫
  • 使用者資料庫

掛載擷取的 Microsoft SQL Server 資料

您可以透過標準掛載機制,將 Microsoft SQL Server 資料掛載至其他伺服器,讓其他 Microsoft SQL Server 擷取及使用這些資料。如要只掛載擷取的 Microsoft SQL 資料,請按照下列步驟操作:

  1. 開啟「應用程式管理工具」,前往「應用程式清單」

  2. 以滑鼠右鍵按一下 SQL Server 伺服器執行個體、使用者資料庫、系統資料庫、叢集或可用性群組,然後選取「存取」。使用篩選器找出所需資料庫。

  3. 在 Runway 中選取要掛載的特定映像檔,然後選取「Mount」

  4. 您可以視需要輸入標籤,以便清楚識別這個已掛載的資料。

  5. 在「Mount Image」對話方塊的「Application Options」部分中,請勿選取「Create New Virtual Application」。如要將 Microsoft SQL 資料掛載為虛擬資料庫,請參閱「將 SQL Server 資料庫掛載為新的虛擬資料庫」。

  6. 視需要填寫「對應選項」和「項目選取」欄位。

    顯示的選項會因所選來源而異。舉例來說,VMware VM 上的資料庫有「Map to all ESX hosts」選項。叢集資料庫有「對應至叢集節點」選項。

  7. 按一下「提交」,系統就會提交掛載工作。

  8. 掛載作業成功後,請登入資料庫伺服器,並確認已掛載的映像檔是否可在「Active Mounts」中使用。

將 SQL Server 資料庫掛載為新的虛擬資料庫

虛擬應用程式掛接作業會將擷取的資料庫掛接為虛擬應用程式。這可讓您快速將資料庫上線,無須實際移動資料,也無須手動設定資料庫的新例項。虛擬應用程式掛載可解決以下問題:在沒有資料庫、伺服器和儲存空間管理員手動介入的情況下,建立及管理實際工作環境資料庫的副本。

本節說明如何將擷取的 Microsoft SQL Server 資料庫掛載為虛擬應用程式。您可以為 Microsoft SQL Server 掛載下列項目:

  • 執行個體
  • 系統資料庫
  • 使用者資料庫
  • 一致性群組
  • 一致性群組的個別成員
  • Always On 可用性群組中的資料庫

掛接映像檔前,請確認已在掛接映像檔的主機上設定 iSCSI,或是已在 VMware 中設定 NFS 資料儲存庫。

如果您只想掛載 Microsoft SQL 資料檔案,而不想在 SQL Server 例項中新增任何資料庫,請參閱「掛載擷取的 Microsoft SQL 資料」。

如果資料庫已損毀或已刪除,將 SQL Server 資料庫掛載為原始伺服器的虛擬應用程式,是執行資料庫還原作業的有效替代方案。

如要將擷取的 Microsoft SQL Server 資料庫掛載為虛擬應用程式,請按照下列步驟操作:

  1. 開啟管理控制台,前往「應用程式管理員」>「應用程式」清單。

  2. 在 SQL Server 執行個體、使用者資料庫、系統資料庫、叢集或可用性群組上按一下滑鼠右鍵,然後選取「存取」。使用篩選器找出所需資料庫。

  3. 在圖像的跑道上,選取要掛載的圖像。選取右側的「掛載」。您可以使用左上角的日曆小工具,縮小備用圖片的範圍。

  4. 在「Application Options」部分,視需要輸入標籤,以便您清楚識別這個已掛載的資料。

  5. 選取「Create New Virtual Application」

  6. 如果資料庫與其記錄一併擷取,則「App Options」對話方塊會提供一個選項,可根據記錄的擷取時間和頻率,將記錄回溯至特定時間點。

  7. 從「SQL Server Instance Name」下拉式清單中,選取要新增資料庫的 SQL Server 執行個體。如果下拉式選單中未列出必要的執行個體名稱,您可以手動在提供的空格中輸入名稱。

  8. 如果您要掛載單一資料庫,請在「SQL Server Database Name」欄位中輸入新虛擬資料庫的名稱。

    如果您要掛載多個資料庫,請在「Name of Consistency Group」欄位中,輸入包含虛擬資料庫的新一致性群組名稱。

  9. 虛擬應用程式掛載點是新的虛擬資料庫。如要保護新的虛擬資料庫,請選取「管理新應用程式」,然後選取要使用的範本和設定檔。

    虛擬應用程式掛載點是新的資料庫。資料庫的快照為增量快照。

    虛擬應用程式會顯示在「Application Manager」應用程式清單中。

    如果您未選取「管理新應用程式」,則該應用程式會在「應用程式管理工具」中顯示為未受保護的應用程式。可像任何其他應用程式一樣受到保護。

    已掛接至 SQL Server 執行個體的虛擬 SQL Server 資料庫,一律會與執行個體的使用者和系統資料庫分開保護。

  10. 還原後復原資料庫:如果您想將資料庫設為線上狀態,以便處理交易,請保留這個預設選項。清除這個值,讓資料庫維持在還原狀態,以便手動套用其他交易記錄備份,將資料庫回溯至特定時間點。

  11. 復原使用者登入:如果您已啟用「備份 SQL Server 登入」政策選項,選取這個選項會將這些登入資訊還原至目標 SQL Server 例項。針對網域帳戶,只有在目標執行個體位於同一個網域的伺服器上,或位於與來源 SQL 伺服器有信任關係的網域時,系統才會還原使用者帳戶。SQL 本機帳戶一律會復原。如果您想確保所有可存取原始來源資料庫的使用者都能存取新的虛擬資料庫,請使用這個選項。

  12. 如有需要,請在「使用者名稱和密碼」欄位輸入使用者名稱和密碼。如果備份和災難復原代理程式帳戶沒有在卸載作業期間卸載資料庫或套用交易記錄的權限,請在此輸入具備這些權限的帳戶憑證。詳情請參閱「Windows 使用者所需的 SQL Server 角色」。

  13. 如果您想變更新虛擬資料庫的復原模式,請選取「復原模式」。預設會保留原始資料庫的復原模型。

  14. 針對「覆寫現有資料庫」,請指出何時要在目標伺服器或執行個體上覆寫與新掛載資料庫同名的資料庫:或「只有在資料庫過時時才覆寫」

  15. 在「對應選項」中,您可以輸入「掛載位置」。如果應用程式只有一個磁碟區,您只能在此指定掛載位置。如果應用程式有多個音量,您可以:

    • 輸入掛載位置。所有磁碟分割區都會自動掛載至指定的掛載位置,並在指定掛載點使用連續的磁碟機代號或編號目錄。

    • 請將這個空間留空,並在「進階選項」中,手動指定每個磁碟容器的掛載位置。

  16. 按一下「提交」,即可提交工作。

  17. 掛載工作完成後,請登入資料庫伺服器,並確認已掛載的映像檔是否可在「Active Mounts」中使用。

管理有效掛載點

建立掛載點後,您可以透過「App Manager」 >「Active Mounts」追蹤圖片。理想情況下,請勿讓任何映像檔無限期掛載。這是因為系統必須先刪除所有掛接點,才能讓掛接點建立的備份映像檔過期。掛載映像檔後,您可以:

  • 卸載映像檔。如有需要,您可以重新掛載。之後如果確定不再需要該映像檔,您可以刪除
  • 卸載並刪除映像檔。這會刪除已掛載的映像檔,而非掛載點所依據的備份。
  • 遷移圖片。這項功能僅適用於 Microsoft SQL Server 掛載點。

掛載已加密的 SQL Server 資料

備份/復原機器會擷取已加密的 SQL Server 資料庫,但不會擷取私密金鑰、加密憑證或密碼。

本節說明下列事項:

  • 判斷是否已啟用 SQL TDE

  • 排解 SQL Server 加密問題

  • SQL Server 主金鑰、加密憑證和密碼程序

如果您要將加密的 SQL Server 資料庫還原至現有的 SQL Server 資料庫,私密金鑰、加密憑證和密碼會出現在 SQL Server 例項中,而還原作業完成後,SQL Server 資料庫會正常運作。

如果您要為加密資料庫執行虛擬應用程式掛載作業,或是只掛載加密的 SQL Server 資料,則掛載加密資料庫或資料的 SQL Server 執行個體必須具備下列條件:

  • 已啟用透明資料加密 (TDE)

  • 來源 SQL Server 資料庫的私密金鑰副本

  • 來源 SQL Server 資料庫的加密憑證副本

  • 提供來源 SQL Server 資料庫的密碼

程序位於 SQL Server 主金鑰、加密憑證和密碼程序中。

判斷是否已啟用 SQL Server TDE

如要判斷是否已在 SQL Server 例項中啟用 TDE,您可以使用 Microsoft SQL Server 管理員工作室的使用者介面 (SSMS),也可以使用手動查詢,判斷資料庫是否已啟用加密功能。例如:

        SELECT
         DB_NAME(database_id)AS dbname,
         encryption_state,
         case encryption_state
           WHEN 0 THEN 'Unencrypted (no
        database encryption key present)'
           WHEN 1 THEN 'Unencrypted'
           WHEN 2 THEN 'Encryption in Progress'
           WHEN 3 THEN 'Encrypted'
           WHEN 4 THEN 'Key Change in Progress'
           WHEN 5 THEN 'Decryption in Progress'
           ELSE CAST(encryption_state AS
        varchar(20))
         END AS encryption_state,
         key_algorithm,
         key_length
         FROM sys.dm_database_encryption_keys

SSMS

如要使用 SSMS 判斷資料庫是否已啟用加密功能,請按照下列步驟操作:

  1. 在 SSMS 中,按一下資料庫名稱的滑鼠右鍵。

  2. 在下拉式選單中選取「Properties」,系統就會顯示資料庫的屬性。

  3. 在「選取頁面」下方,按一下「選項」,系統就會顯示資料庫的選項。

  4. 在「狀態」下方,確認「已啟用加密」已設為「是」

排解 SQL Server 加密問題

以下是兩個常見錯誤:

  • SQL 錯誤 24583:表示缺少加密憑證。下列 24583 SQL Server 錯誤表示您嘗試將 SQL Server 執行個體掛載至沒有來源 SQL Server 執行個體加密憑證的執行個體。

  • SQL 錯誤 33117:未啟用透明資料加密功能。以下 33117 SQL Server 錯誤表示您嘗試將加密的 SQL Server 資料庫掛載至未啟用透明資料加密的 SQL Server 執行個體。

SQL Server 主金鑰、加密憑證和密碼程序

建立及複製主金鑰和加密憑證是標準的 Microsoft SQL Server 程序,並非備份/復原設備專屬。為了方便您操作,我們在此提供這些資訊:

  • 建立新的主金鑰

  • 建立新的加密憑證

  • 套用伺服器主金鑰和加密憑證

  • 建立伺服器主金鑰、加密憑證的副本,並提供來源密碼

  • 複製加密憑證、私密金鑰,並提供來源密碼

如需詳細資訊,請參閱 Microsoft 關於安全性憑證和金鑰的詳細資訊:https://msdn.microsoft.com/en-us/library/ff848768.aspx

建立新的主金鑰

        use master;
        go
        create master key encryption by password = 'SMKSourcePassword';
        go

建立新的加密憑證

        use master;
        go
        create certificate sourcedbcert with subject = 'Act Test Cert';
        go

套用伺服器主金鑰和加密憑證

        use DATABASENAME;
        go
        CREATE DATABASE ENCRYPTION KEY
        WITH ALGORITHM = AES_128
        ENCRYPTION BY SERVER CERTIFICATE sourcedbcert;
        go
        alter database DATABASENAME
        set encryption on;
        go

建立伺服器主金鑰、加密憑證的副本,並提供來源密碼

如果某個 SQL Server 執行個體上的 SQL Server 資料庫已掛載至另一個 SQL Server 執行個體,您必須手動複製要掛載的資料庫伺服器主金鑰、加密憑證和密碼。然後將伺服器主金鑰、加密憑證和密碼複製到其他 SQL Server 例項。

如要複製伺服器主金鑰、加密認證和密碼,請完成下列步驟:

        use master;
        go
        backup certificate sourcedbcert to file = 'E:\Enc\Sourcecert'
        with PRIVATE KEY (file='E:\Enc\Privatekey',
        ENCRYPTION BY PASSWORD='SecurePassword');
        go

複製加密憑證、私密金鑰,並提供來源密碼

如果啟用加密功能的 SQL Server 資料庫或資料已掛接至新的 SQL Server 執行個體,則新執行個體必須擁有來源 SQL Server 執行個體的伺服器主金鑰、加密憑證和密碼的副本。手動將您在先前章節中為來源 SQL Server 執行個體建立的加密憑證和密碼副本,複製到新的 SQL Server 執行個體。在新的 SQL Server 執行個體中完成下列工作:

        create certificate destinationdbcert
        FROM file = 'C:\Program Files\Backup and DR\sqlenc\Sourcecert'
        with private key (file = 'C:\Program Files\Backup and DR\sqlenc\Privatekey',
        decryption by password = 'SecurePassword')
        go

其他 Microsoft SQL Server 備份和災難復原說明文件

本頁是一系列專門用於保護及復原 Microsoft SQL 伺服器資料庫和支援二進位檔的備份和 DR 頁面之一。您可以在下列頁面中找到更多資訊: