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

本節說明如何掛接擷取的 Microsoft SQL Server:

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

掛接擷取的 Microsoft SQL Server 資料

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

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

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

  3. 在跑道上選取要掛接的特定映像檔,然後選取「掛接」

  4. 視需要輸入標籤,清楚識別已掛接的資料。

  5. 在「Mount Image」(掛接映像檔) 對話方塊的「Application Options」(應用程式選項) 部分中,請勿選取「Create New Virtual Application」(建立新的虛擬應用程式)如要將 Microsoft SQL 資料掛接為虛擬資料庫,請參閱「將 SQL Server 資料庫掛接為新的虛擬資料庫」。

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

    系統會根據所選來源顯示不同選項。 舉例來說,VMware VM 上的資料庫有「對應至所有 ESX 主機」選項。叢集資料庫有「對應至叢集節點」選項。

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

  8. 掛接作業完成後,請登入資料庫伺服器,並確認掛接的映像檔位於「Active Mounts」(有效掛接) 中。

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

虛擬應用程式掛接作業會將擷取的資料庫掛接為虛擬應用程式。您不必實際移動資料,也不必手動設定新的資料庫執行個體,就能快速將資料庫上線。虛擬應用程式掛接功能可解決建立及管理實際工作環境資料庫副本的難題,資料庫、伺服器和儲存空間管理員不必手動介入。

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

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

掛接映像檔前,請先確認映像檔掛接主機已設定 iSCSI,或已設定 VMware 中的 NFS 資料存放區。

如要只掛接 Microsoft SQL 資料檔案,而不將任何資料庫新增至 SQL Server 執行個體,請參閱「掛接擷取的 Microsoft SQL 資料」。

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

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

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

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

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

  4. 在「應用程式選項」部分中,視需要輸入標籤,清楚識別這個已掛接的資料。

  5. 選取「Create New Virtual Application」(建立新的虛擬應用程式)

  6. 如果資料庫是連同記錄一起擷取,則「應用程式選項」對話方塊會提供選項,可根據記錄的擷取時間和頻率,將記錄回溯至特定時間點。

  7. 從「SQL Server Instance Name」(SQL Server 執行個體名稱) 下拉式清單中,選取要新增資料庫的 SQL Server 執行個體。如果下拉式選單中沒有所需的執行個體名稱,可以在提供的空間中手動輸入名稱。

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

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

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

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

    虛擬應用程式會顯示在「應用程式管理工具」的應用程式清單中。

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

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

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

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

  12. 在「使用者名稱和密碼」欄位中輸入使用者名稱和密碼 (如有需要)。如果 Backup and DR 代理程式帳戶沒有權限在解除掛接作業期間卸離資料庫,或是套用交易記錄,請在此輸入具有這些權限的帳戶憑證。詳情請參閱「Windows 使用者所需的 SQL Server 角色」。

  13. 如要變更新虛擬資料庫的復原模式,請選取「復原模式」。預設值為保留原始資料庫的復原模式。

  14. 針對「Overwrite Existing Database」(覆寫現有資料庫),請指出何時要覆寫目標伺服器或執行個體上與要掛接的新資料庫同名的資料庫:Yes (是)、No (否) 或 Only if it's Stale (僅限過時)。

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

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

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

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

  17. 掛接工作完成後,請登入資料庫伺服器,並確認掛接的映像檔位於「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 Management Studio 使用者介面 (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. 從下拉式選單中選取「房源」,資料庫的房源就會顯示出來。

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

  4. 在「State」(狀態) 下方,確認「Encryption Enabled」(已啟用加密) 已設為「True」(是)

排解 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 適用的備份和災難復原服務其他說明文件

本頁是系列頁面之一,專門介紹如何使用 Backup and DR 保護及復原 Microsoft SQL Server 資料庫和支援的二進位檔。如需更多資訊,請參閱下列頁面: