AlwaysOn 可用性群組的必要條件、限制和建議 (SQL Server)

此主題描述部署 AlwaysOn 可用性群組 的考量,包括對於主機電腦、Windows Server 容錯移轉叢集 (WSFC) 叢集、伺服器執行個體和可用性群組的必要條件、限制和建議。 它也會指出這些元件的安全性考量和必要權限 (如果有的話)。

重要事項重要事項

在您部署 AlwaysOn 可用性群組 之前,我們強烈建議您先閱讀本主題的每一節。

本主題內容:

  • 支援 AlwaysOn 可用性群組的 .Net Hotfix

  • Windows 系統需求和建議

  • SQL Server 執行個體的必要條件和限制

  • 網路連線建議

  • 用戶端連接性支援

  • 使用 SQL Server 容錯移轉叢集執行個體 (FCI) 裝載可用性複本的必要條件和限制

  • 可用性群組的必要條件和限制

  • 可用性資料庫的必要條件和限制

  • 相關內容

支援 AlwaysOn 可用性群組的 .Net Hotfix

根據您將搭配 AlwaysOn 可用性群組 使用的 SQL Server 2012 元件和功能而定,可能會需要安裝下表中識別的其他 .Net Hotfix。 您可以依照任何順序安裝 Hotfix。

   

相依功能

Hotfix

連結

核取方塊

Reporting Services

適用於 .Net 3.5 SP1 的 Hotfix 加入了對 AlwaysOn 功能的 SQL 用戶端支援,包括讀取意圖、Readonly 和 Multisubnetfailover。 每一部 Reporting Services 報表伺服器上都需要安裝這個 Hotfix。

KB 2654347:此 Hotfix 可將 AlwaysOn 功能的支援加入 .Net 3.5 SP1

Windows 系統需求和建議

本節內容:

  • 檢查清單:需求

  • 支援 AlwaysOn 可用性群組的 Windows Hotfix (Windows 系統)

  • 對裝載可用性複本之電腦的建議 (Windows 系統)

  • 權限

  • 相關工作

  • 相關內容

檢查清單:需求 (Windows 系統)

若要支援 AlwaysOn 可用性群組 功能,請確定要參與一個或多個可用性群組的每部電腦都符合下列基礎需求:

   

需求

連結

核取方塊

確定系統不是網域控制站。

網域控制站不支援可用性群組。

核取方塊

確定每部電腦都是執行 x86 (非 WOW64) 或 x64 Windows Server 2008 (含) 以後版本。

WOW64 (Windows 64 位元上的 Windows 32 位元) 不支援 AlwaysOn 可用性群組。

核取方塊

確定每部電腦都是在 Windows Server 容錯移轉叢集 (WSFC) 叢集中的節點。

SQL Server 的 Windows Server 容錯移轉叢集 (WSFC)

核取方塊

確定 WSFC 叢集包含足夠多的節點可支援您的可用性群組組態。

WSFC 節點只能裝載給定可用性群組的一個可用性複本。 在給定 WSFC 節點上,一個或多個 SQL Server 執行個體可以裝載許多可用性群組的可用性複本。

詢問您的資料庫管理員,計畫中可用性群組的可用性複本支援需要多少 WSFC 節點。

AlwaysOn 可用性群組概觀 (SQL Server).

核取方塊

確定 WSFC 叢集中的每個節點上都安裝了所有適用的 Windows Hotfix。

重要事項重要事項

正要部署 AlwaysOn 可用性群組 的 WSFC 叢集節點上,需要或建議使用一些 Hotfix。 如需詳細資訊,請參閱本節稍後的<支援 AlwaysOn 可用性群組的 Windows Hotfix (Windows 系統)>。

重要事項重要事項

還要確定您的環境已正確設定為連接到可用性群組。 如需詳細資訊,請參閱<AlwaysOn 用戶端連接性 (SQL Server)>。

支援 AlwaysOn 可用性群組的 Windows Hotfix (Windows 系統)

根據您的叢集拓撲,許多其他 Windows Server 2008 Service Pack 2 (SP2) 或 Windows Server 2008 R2 可能適用於支援 AlwaysOn 可用性群組。 下表將識別這些 Hotfix。 您可以依照任何順序安裝這些 Hotfix。

     

適用於 Windows 2008 SP2

適用於 Windows 2008 R2 SP1

包含在 Windows 2012 中

若要支援...

Hotfix

連結

核取方塊

    √

    √

設定最佳的 WSFC 仲裁

在每個 WSFC 節點上,確定已經安裝了知識庫文件 2494036 中所述的 Hotfix。

此 Hotfix 支援使用非自動容錯移轉目標來設定最佳仲裁。 此功能使您可以選取投票的節點,藉此改善多網站叢集。

KB 2494036:此 Hotfix 可讓您設定在 Windows Server 2008 和 Windows Server 2008 R2 中沒有仲裁投票的叢集節點 (機器翻譯)

如需有關仲裁投票的資訊,請參閱<WSFC 仲裁模式和投票組態 (SQL Server)>。

核取方塊

    √

    √

更有效率地使用網路頻寬

在每個 WSFC 節點上,確定已經安裝了知識庫文件 2616514 中所述的 Hotfix。

如果沒有這個 Hotfix,叢集服務就會在叢集節點之間傳送不必要的登錄通知。 這種行為會限制網路頻寬,而這對 AlwaysOn 可用性群組 會造成嚴重問題。

KB 2616514:叢集服務會在 Windows Server 2008 或 Windows Server 2008 R2 的叢集節點之間傳送不必要的登錄機碼變更通知 (機器翻譯)

核取方塊

    √

不適用

並非所有 WSFC 節點皆可在磁碟上進行 VPD 儲存測試

如果 WSFC 節點正在執行 Windows Server 2008 R2 Service Pack 1 (SP1),而且 Validate SCSI Device Vital Product Data (VPD) 儲存測試在已上線但並非 WSFC 叢集中的所有節點都可使用的磁碟上不正確地執行之後失敗,請安裝知識庫文件 2531907 中所述的 Hotfix。

此 Hotfix 可排除在磁碟已上線時驗證報告中不正確的警告或錯誤。

KB 2531907:在您安裝 Windows Server 2008 R2 SP1 之後,Validate SCSI Device Vital Product Data (VPD) 測試失敗 (機器翻譯)

核取方塊

    √

更快容錯移轉至本機複本

若 WSFC 節點執行 Windows Server 2008 R2 Service Pack 1 (SP1),請確定已經安裝了知識庫文件 2687741 中所述的下列 Hotfix。

此 Hotfix 可以提升 AlwaysOn 可用性群組 容錯移轉至本機複本的效能。

KB 2687741:此 Windows Server 2008 R2 Hotfix 可提升 SQL Server 2012 之「AlwaysOn 可用性群組」功能的效能

核取方塊

    √

    √

適用於容錯移轉叢集執行個體 (FCI) 非對稱儲存

如果任何容錯移轉叢集執行個體 (FCI) 都將啟用 AlwaysOn 可用性群組,請安裝 Windows Server 2008 Hotfix 976097。

此 Hotfix 可讓容錯移轉叢集管理 Microsoft Management Console (MMC) 嵌入式管理單元支援非對稱儲存,亦即僅部分 WSFC 節點可使用共用磁碟。

KB 976097:對於執行 Windows Server 2008 或 Windows Server 2008 R2 之容錯移轉叢集的容錯移轉叢集管理 MMC 嵌入式管理單元,Hotfix 新增非對稱儲存支援

AlwaysOn 架構指南:使用容錯移轉叢集執行個體和可用性群組,建立高可用性和災害復原方案

核取方塊

    √

    √

不適用

Internet Protocol Security (IPsec)

如果您的環境使用 IPsec 連接,當用戶端電腦重新建立與虛擬網路名稱的 IPsec 連接 (在本文中,連接至可用性群組接聽程式) 時,您會遇到長時間延遲 (大約二或三分鐘)。 如果您使用 IPsec 連接,我們建議您檢閱知識庫文件 (KB 980915) 中詳述的特定案例。

KB 980915:當您從執行 Windows Server 2003、Windows Vista、Windows Server 2008、Windows 7 或 Windows Server 2008 R2 的電腦重新連接 IPSec 連接時發生長時間延遲 (機器翻譯)

核取方塊

    √

    √

IPv6

如果您使用 IPv6,我們建議您根據自己的 Windows Server 作業系統,檢閱知識庫文件 2578103 或 2578113 中詳述的特定案例。

如果您的 Windows Server 拓撲使用 IP 第 6 版 (IPv6),WSFC 叢集服務大約需要 30 秒來容錯移轉 IPv6 IP 位址。 這會導致用戶端大約等候 30 秒,然後再重新連接到 IPv6 IP 位址。

核取方塊

    √

    √

叢集和應用程式伺服器之間沒有路由器

如果容錯移轉叢集與應用程式伺服器之間不存在任何路由器,叢集服務就會緩慢地容錯移轉網路相關資源。 在可用性群組容錯移轉之後,這會延遲用戶端重新連接。 如果路由器不存在,我們建議您檢閱知識庫文件 2582281 中詳述的特定案例並安裝 Hotfix (如果適用於環境的話)。

KB 2582281:如果叢集與應用程式伺服器之間不存在任何路由器,就會緩慢地進行容錯移轉作業 (機器翻譯)

搭配回到頁首連結使用的箭頭圖示回到頁首

對裝載可用性複本之電腦的建議 (Windows 系統)

  • 可相比的系統:對於給定的可用性群組而言,所有的可用性複本都應該在可處理相同工作負載的可相比的系統上執行。

  • 專用的網路介面卡:為達最佳效能,請為 AlwaysOn 可用性群組 使用專用的網路介面卡 (NIC)。

  • 足夠的磁碟空間:伺服器執行個體裝載可用性複本的每部電腦都必須擁有足夠的磁碟空間,才能容納可用性群組中的所有資料庫。 請牢記,當主要資料庫成長時,其對應的次要資料庫也會成長相同的數量。

權限 (Windows 系統)

若要管理 WSFC 叢集,使用者必須是每個叢集節點上的系統管理員。

如需有關管理叢集之帳戶的詳細資訊,請參閱<附錄 A:容錯移轉叢集要求>。

相關工作 (Windows 系統)

工作

連結

設定 HostRecordTTL 值。

變更 HostRecordTTL (使用 Windows PowerShell)

變更 HostRecordTTL (使用 Windows PowerShell)

  1. 透過 [以系統管理員身分執行] 開啟 PowerShell 視窗。

  2. 匯入 FailoverClusters 模組。

  3. 使用 Get-ClusterResource 指令程式尋找網路名稱資源,然後使用 Set-ClusterParameter 指令程式設定 HostRecordTTL 值,如下所示:

    Get-ClusterResource “<NetworkResourceName>” | Set-ClusterParameter HostRecordTTL <TimeInSeconds>

    下列 PowerShell 範例會針對名為 "SQL Network Name (SQL35)" 的網路名稱資源將 HostRecordTTL 設定為 300 秒。

    Import-Module FailoverClusters
    
    $nameResource = "SQL Network Name (SQL35)"
    Get-ClusterResource $nameResource | Set-ClusterParameter ClusterParameter HostRecordTTL 300
    
    提示提示

    每次開啟新的 PowerShell 視窗時,都需要匯入 FailoverClusters 模組。

相關內容 (PowerShell)

相關內容 (Windows 系統)

搭配回到頁首連結使用的箭頭圖示[回到頁首]

SQL Server 執行個體的必要條件和限制

每個可用性群組都需要 SQL Server 執行個體所裝載的一組容錯移轉夥伴,稱為「可用性複本」(Availability Replica)。 給定的伺服器執行個體可以是「獨立執行個體」(Stand-Alone Instance) 或 SQL Server「容錯移轉叢集執行個體」(Failover Cluster Instance,FCI)。

本節內容:

  • 檢查清單:必要條件

  • 限制

  • 可用性群組的執行緒使用量

  • 權限

  • 相關工作

  • 相關內容

檢查清單:必要條件 (伺服器執行個體)

必要條件

連結

核取方塊

主機電腦必須是 Windows Server 容錯移轉叢集 (WSFC) 節點。 裝載給定可用性群組之可用性複本的 SQL Server 執行個體,必須位於單一 WSFC 叢集的不同節點上。 唯一的例外狀況是在移轉至另一個 WSFC 叢集期間,可用性群組可以暫時跨兩個叢集。

SQL Server 的 Windows Server 容錯移轉叢集 (WSFC)

容錯移轉叢集和 AlwaysOn 可用性群組 (SQL Server)

請在裝載可用性複本的每個 WSFC 節點上,確定已經安裝了知識庫文件 2897554 中所述的 Hotfix。

此 Hotfix 可確保每個可用性複本的同步處理狀態已適當更新,如此有助於避免因為自動容錯移轉而意外遺失資料。

知識庫 2897554:修正:如果主要複本狀況不好,可能無法更新 AlwaysOn 可用性群組複本的同步處理狀態 (機器翻譯)

核取方塊

若要讓可用性群組使用 Kerberos:

  • 裝載可用性群組之可用性複本的所有伺服器執行個體都必須使用相同的 SQL Server 服務帳戶。

  • 網域管理員需要針對可用性群組接聽程式之虛擬網路名稱 (VNN) 的 SQL Server 服務帳戶,在 Active Directory 中手動註冊伺服器主體名稱 (SPN)。 如果對 SQL Server 服務帳戶以外的帳戶註冊 SPN,驗證會失敗。

重要事項重要事項

如果您變更 SQL Server 服務帳戶,網域管理員需要手動重新註冊 SPN。

註冊 Kerberos 連接的服務主體名稱

簡短說明:

Kerberos 和 SPN 強制執行相互驗證。 SPN 對應到啟動 SQL Server 服務的 Windows 帳戶。 如果不正確地註冊 SPN 或註冊作業失敗,則 Windows 安全層無法判斷與 SPN 相關聯的帳戶,也無法使用 Kerberos 驗證。

[!附註]

NTLM 沒有此需求。

核取方塊

如果您計劃使用 SQL Server 容錯移轉叢集執行個體 (FCI) 來裝載可用性複本,請務必了解 FCI 限制且符合 FCI 需求。

使用 SQL Server 容錯移轉叢集執行個體 (FCI) 裝載可用性複本的必要條件和限制 (本主題稍後)

核取方塊

每個伺服器執行個體都必須執行 SQL Server 2012 Enterprise Edition。

SQL Server 2012 版本支援的功能

核取方塊

裝載可用性群組之可用性複本的所有伺服器執行個體都必須使用相同的 SQL Server 定序。

設定或變更伺服器定序

核取方塊

在將要裝載任何可用性群組之可用性複本的每個伺服器執行個體上,啟用AlwaysOn 可用性群組 功能。 在給定的電腦上,只要 SQL Server 安裝有支援,您就可以對多個伺服器執行個體啟用 AlwaysOn 可用性群組。

啟用和停用 AlwaysOn 可用性群組 (SQL Server)

重要事項重要事項

如果您刪除然後重新建立 WSFC 叢集,則必須在原始 WSFC 叢集上已啟用 AlwaysOn 可用性群組 的每個伺服器執行個體,停用然後重新啟用 AlwaysOn 可用性群組 功能。

核取方塊

每一個伺服器執行個體都需要資料庫鏡像端點。 請注意,伺服器執行個體上的所有可用性複本、資料庫鏡像夥伴和見證都會共用此端點。

如果您選取來裝載可用性複本的伺服器執行個體是以網域使用者帳戶執行,且還沒有資料庫鏡像端點,新增可用性群組精靈 (或將複本加入至可用性群組精靈) 可以建立端點,並授與伺服器執行個體服務帳戶的 CONNECT 權限。 但是,如果 SQL Server 服務是以內建帳戶 (例如本機系統、本機服務或網路服務) 或非網域帳戶的身分執行,您就必須將憑證用於端點驗證,而且精靈無法在此伺服器執行個體上建立資料庫鏡像端點。 在此情況下,我們建議您先手動建立資料庫鏡像端點,然後再啟動精靈。

安全性注意事項安全性注意事項

AlwaysOn 可用性群組 與資料庫鏡像有相同的傳輸安全性。

資料庫鏡像端點 (SQL Server)

資料庫鏡像和 AlwaysOn 可用性群組的傳輸安全性 (SQL Server)

核取方塊

如果使用 FILESTREAM 的任何資料庫將要加入至可用性群組,請確定即將裝載可用性群組之可用性複本的每個伺服器執行個體都啟用了 FILESTREAM。

啟用及設定 FILESTREAM

核取方塊

如果任何自主資料庫將要加入至可用性群組,請確定在即將裝載可用性群組之可用性複本的每個伺服器執行個體,contained database authentication 伺服器選項都設為 1。

自主資料庫驗證伺服器組態選項

伺服器組態選項

可用性群組的執行緒使用量

AlwaysOn 可用性群組 有下列工作者執行緒的需求:

  • 在閒置的 SQL Server 執行個體上,AlwaysOn 可用性群組 使用 0 個執行緒。

  • 可用性群組使用之執行緒的最大數目是伺服器執行緒最大數目的設定值 ('max worker threads') 減 40。

  • 裝載在給定伺服器執行個體上的可用性複本共用單一執行緒集區。

    視需要共用執行緒,如下所示:

    • 一般而言,有 3-10 個共用的執行緒,但這個數目會根據主要複本的工作負載而增加。

    • 如果給定的執行緒已經閒置一段時間,它會釋放回一般 SQL Server 執行緒集區。 一般而言,非使用中的執行緒在 ~15 秒非使用狀態之後釋出。 不過,根據上一個活動,閒置執行緒可能會保留更久。

  • 此外,可用性群組也使用不共用的執行緒,如下所示:

    • 每個主要複本會針對每個主要資料庫使用 1 個記錄檔擷取執行緒。 此外,它會針對每個次要資料庫使用 1 個記錄檔傳送執行緒。 記錄檔傳送執行緒在 ~15 秒非使用狀態之後釋出。

    • 每個次要複本會針對每個次要資料庫使用 1 個重做執行緒。 重做傳送執行緒在 ~15 秒非使用狀態之後釋出。

    • 次要複本上的備份會在備份作業的持續時間內保留主要複本上的執行緒。

如需詳細資訊,請參閱<AlwaysON - HADRON 學習系列:資料庫啟用 HADRON 時工作者集區的使用方式>(CSS SQL Server 工程師部落格)。

權限 (伺服器執行個體)

工作

必要權限

建立資料庫鏡像端點

需要 CREATE ENDPOINT 權限或系統管理員 (sysadmin) 固定伺服器角色的成員資格。 也需要 CONTROL ON ENDPOINT 權限。 如需詳細資訊,請參閱<GRANT 端點權限 (Transact-SQL)>。

啟用 AlwaysOn 可用性群組

需要本機電腦的 Administrator 群組成員資格和 WSFC 叢集的完整控制。

相關工作 (伺服器執行個體)

工作

主題

判斷資料庫鏡像端點是否存在

sys.database_mirroring_endpoints (Transact-SQL)

建立資料庫鏡像端點 (如果尚未存在)

啟用 AlwaysOn 可用性群組

啟用和停用 AlwaysOn 可用性群組 (SQL Server)

相關內容 (伺服器執行個體)

搭配回到頁首連結使用的箭頭圖示[回到頁首]

網路連線建議

我們強烈建議您針對 WSFC 叢集成員之間的通訊及可用性複本之間的通訊使用相同的網路連結。 使用不同的網路連結時,部分連結失敗 (或甚至間歇性失敗) 可能會發生意外的行為。

例如,如果希望可用性群組支援自動容錯移轉,則屬於自動容錯移轉夥伴的次要複本必須處於 SYNCHRONIZED 狀態。 如果此次要複本的網路連結失敗 (或甚至間歇性失敗),此複本會進入 UNSYNCHRONIZED 狀態,而且要等到還原連結之後才會開始重新同步處理。 如果 WSFC 叢集在次要複本未同步處理時要求自動容錯移轉,則不會發生自動容錯移轉。

搭配回到頁首連結使用的箭頭圖示[回到頁首]

用戶端連接性支援

如需有關 AlwaysOn 可用性群組 支援用戶端連接性的詳細資訊,請參閱<AlwaysOn 用戶端連接性 (SQL Server)>。

搭配回到頁首連結使用的箭頭圖示[回到頁首]

使用 SQL Server 容錯移轉叢集執行個體 (FCI) 裝載可用性複本的必要條件和限制

本節內容:

  • 限制

  • 檢查清單:必要條件

  • 相關工作

  • 相關內容

限制 (FCI)

  • **FCI 的叢集節點只能針對給定的可用性群組裝載一個複本:**如果您在 FCI 上加入可用性複本,則可能是 FCI 擁有者的 WSFC 叢集節點將無法針對相同的可用性群組裝載另一個複本。

    此外,其他每個複本都必須由相同 WSFC 叢集中之不同 WSFC 節點上的 SQL Server 2012 執行個體裝載。 唯一的例外狀況是在移轉至另一個 WSFC 叢集期間,可用性群組可以暫時跨兩個叢集。

  • **FCI 不支援依照可用性群組進行自動容錯移轉:**FCI 不支援依照可用性群組進行自動容錯移轉,因此任何由 FCI 裝載的可用性複本只能設定為手動容錯移轉。

  • 變更 FCI 網路名稱:如果您需要對裝載可用性複本的 FCI 變更網路名稱,則需要從其可用性群組移除複本,然後將複本重新加入至可用性群組。 您無法移除主要複本,因此如果要對裝載可用性複本的 FCI 重新命名,應該容錯移轉至次要複本,然後移除先前的主要複本並重新加回。 請注意重新命名 FCI 可能改變其資料庫鏡像端點的 URL。 當您加入複本時,請務必指定目前端點的 URL。

檢查清單:必要條件 (FCI)

必要條件

連結

核取方塊

使用 FCI 裝載可用性複本之前,請先確定系統管理員已安裝知識庫文件 KB 976097 中所述的 Windows Server 2008 Hotfix。 此 Hotfix 可讓容錯移轉叢集管理 Microsoft Management Console (MMC) 嵌入式管理單元支援非對稱儲存,亦即僅部分 WSFC 節點可使用共用磁碟。

KB 976097:對於執行 Windows Server 2008 或 Windows Server 2008 R2 之容錯移轉叢集的容錯移轉叢集管理 MMC 嵌入式管理單元,Hotfix 新增非對稱儲存支援

核取方塊

依照標準 SQL Server 容錯移轉叢集執行個體安裝,確定每個 SQL Server 容錯移轉叢集執行個體 (FCI) 都擁有必要的共用儲存體。

相關工作 (FCI)

工作

主題

安裝 SQL Server 容錯移轉叢集

建立新的 SQL Server 容錯移轉叢集 (安裝程式)

現有 SQL Server 容錯移轉叢集的就地升級

升級 SQL Server 容錯移轉叢集執行個體 (安裝程式)

維護現有 SQL Server 容錯移轉叢集

在 SQL Server 容錯移轉叢集 (安裝程式) 中加入或移除節點

搭配回到頁首連結使用的箭頭圖示[回到頁首]

相關內容 (FCIs)

可用性群組的必要條件和限制

本節內容:

  • 限制

  • 需求

  • 安全性

  • 相關工作

限制 (可用性群組)

  • 可用性複本必須由一個 WSFC 叢集中的不同節點所裝載:對於給定的可用性群組而言,可用性複本必須由在相同 WSFC 叢集中不同節點上執行的伺服器執行個體所裝載。 唯一的例外狀況是在移轉至另一個 WSFC 叢集期間,可用性群組可以暫時跨兩個叢集。

    [!附註]

    同一部實體電腦上的虛擬機器可各自裝載相同可用性群組的可用性複本,因為每部虛擬機器都會當做個別的電腦。

  • 唯一的可用性群組名稱:每個可用性群組名稱在 WSFC 叢集上都必須是唯一的。 可用性群組名稱的最大長度為 128 個字元。

  • **可用性複本:**每個可用性群組都支援一個主要複本和最多四個次要複本。 所有複本都可以在非同步認可模式下執行,或其中多達三個複本可以在同步認可模式下執行。

  • 每部電腦的可用性群組和可用性資料庫數目上限:您可以放到電腦 (VM 或實體) 上的資料庫和可用性群組實際數目取決於硬體和工作負載,不過沒有強制執行的限制。 Microsoft 對每部實體電腦 10 AG 和 100 DB 進行過廣泛測試。 超載系統的徵狀包括 (但不限於) 工作者執行緒耗盡、AlwaysOn 系統檢視和 DMV 的回應時間緩慢,及/或停止的發送器系統傾印。 請確實透過類似實際執行的工作負載徹底測試您的環境,確保其能夠在應用程式 SLA 範圍內處理尖峰工作負載容量。 在考量 SLA 的情況下,務必考慮失敗情況下的負載,以及預期的回應時間。

  • 不要使用容錯移轉叢集管理員操作可用性群組:

    例如:

    • 不要變更任何可用性群組屬性,例如可能的擁有者。

    • 不要使用容錯移轉叢集管理員進行可用性群組的容錯移轉。 您必須使用 Transact-SQL 或 SQL Server Management Studio。

必要條件 (可用性群組)

在建立或重新設定可用性群組組態時,請務必遵守下列需求。

必要條件

描述

核取方塊

如果您計劃使用 SQL Server 容錯移轉叢集執行個體 (FCI) 來裝載可用性複本,請務必了解 FCI 限制且符合 FCI 需求。

使用 SQL Server 容錯移轉叢集執行個體 (FCI) 裝載可用性複本的必要條件和限制 (本主題稍前)

安全性 (可用性群組)

  • 安全性是從 Windows Server 容錯移轉叢集 (WSFC) 叢集繼承。 在整個 WSFC 叢集 API 的資料粒度,WSFC 提供了兩個層級的使用者安全性:

    • 唯讀存取

    • 完整控制

      AlwaysOn 可用性群組 需要完整控制,而在 SQL Server 執行個體上啟用 AlwaysOn 可用性群組,會提供 WSFC 叢集的完整控制 (透過服務 SID)。

      不能在 WSFC 容錯移轉叢集管理員直接加入或移除伺服器執行個體的安全性。 若要管理 WSFC 安全性工作階段,請使用 SQL Server 組態管理員或 SQL Server 中的 WMI 對等工具。

  • 每個 SQL Server 執行個體都必須有權限可存取登錄、叢集等項目。

  • 我們建議您針對裝載 AlwaysOn 可用性群組 可用性複本的伺服器執行個體之間的連接使用加密。

權限 (可用性群組)

工作

必要權限

建立可用性群組

需要系統管理員 (sysadmin) 固定伺服器角色的成員資格,以及 CREATE AVAILABILITY GROUP 伺服器權限、ALTER ANY AVAILABILITY GROUP 權限或 CONTROL SERVER 權限。

改變可用性群組

需要可用性群組的 ALTER AVAILABILITY GROUP 權限、CONTROL AVAILABILITY GROUP 權限、ALTER ANY AVAILABILITY GROUP 權限或 CONTROL SERVER 權限。

此外,將資料庫聯結至可用性群組需要 db_owner 固定資料庫角色的成員資格。

卸除/刪除可用性群組

需要可用性群組的 ALTER AVAILABILITY GROUP 權限、CONTROL AVAILABILITY GROUP 權限、ALTER ANY AVAILABILITY GROUP 權限或 CONTROL SERVER 權限。 若要卸除本機複本位置所未裝載的可用性群組,您需要該可用性群組的 CONTROL SERVER 權限或 CONTROL 權限。

相關工作 (可用性群組)

工作

主題

建立可用性群組

修改可用性複本的數目

建立可用性群組接聽程式

建立或設定可用性群組接聽程式 (SQL Server)

卸除可用性群組

移除可用性群組 (SQL Server)

搭配回到頁首連結使用的箭頭圖示[回到頁首]

可用性資料庫的必要條件和限制

資料庫必須符合下列必要條件和限制,才適合加入至可用性群組。

本節內容:

  • 需求

  • 限制

  • 對裝載可用性複本之電腦的建議 (Windows 系統)

  • 權限

  • 相關工作

檢查清單:需求 (可用性資料庫)

資料庫必須擁有下列資格,才能加入至可用性群組:

需求

連結

核取方塊

必須是使用者資料庫。 系統資料庫不得屬於可用性群組。

核取方塊

位於建立可用性群組的 SQL Server 執行個體上,而且伺服器執行個體能夠存取它。

核取方塊

必須是讀取/寫入資料庫。 唯讀資料庫不得加入至可用性群組。

sys.databases (is_read_only = 0)

核取方塊

必須是多使用者資料庫。

sys.databases (user_access = 0)

核取方塊

不使用 AUTO_CLOSE。

sys.databases (is_auto_close_on = 0)

核取方塊

使用完整復原模式 (也稱為完整復原模式)。

sys.databases (recovery_model = 1)

核取方塊

至少擁有一個完整資料庫備份。

[!附註]

將資料庫設為完整復原模式之後,需要完整備份以起始完整復原記錄檔鏈結。

建立完整資料庫備份 (SQL Server)

核取方塊

不屬於任何現有的可用性群組。

sys.databases (group_database_id = NULL)

核取方塊

並未設定資料庫鏡像。

sys.database_mirroring (如果資料庫未參與鏡像,前置詞為 "mirroring_" 的所有資料行都是 NULL)。

核取方塊

將使用 FILESTREAM 的資料庫加入至可用性群組之前,請確定 (將要) 裝載可用性群組之可用性複本的每個伺服器執行個體都啟用了 FILESTREAM。

啟用及設定 FILESTREAM

核取方塊

將自主資料庫加入至可用性群組之前,請確定在 (將要) 裝載可用性群組之可用性複本的每個伺服器執行個體,contained database authentication 伺服器選項都設為 1。

自主資料庫驗證伺服器組態選項

伺服器組態選項

[!附註]

AlwaysOn 可用性群組 可搭配任何支援的資料庫相容性層級使用。

限制 (可用性資料庫)

  • 如果次要資料庫的檔案路徑 (包括磁碟機代號) 不同於對應主要資料庫的路徑,下列限制適用:

    • 新增可用性群組精靈/將資料庫加入至可用性群組精靈:不支援 [完整] 選項 (在選取初始資料同步處理頁面)。

    • RESTORE WITH MOVE:若要建立次要資料庫,在裝載次要複本的每個 SQL Server 執行個體上,資料庫檔案必須是 RESTORED WITH MOVE。

    • 對加入檔案作業的影響:在次要資料庫上,對主要複本稍後的加入檔案作業可能會失敗。 此失敗可能導致次要資料庫暫停。 而這又會導致次要複本進入 NOT SYNCHRONIZING 狀態。

      [!附註]

      如需有關回應失敗之加入檔案作業的詳細資訊,請參閱<疑難排解失敗的加入檔案作業 (AlwaysOn 可用性群組)>。

  • 您無法卸除目前屬於可用性群組的資料庫。

追蹤 TDE 保護的資料庫

如果您使用透明資料加密 (TDE),用來建立及解密其他金鑰的憑證或非對稱金鑰在裝載可用性群組之可用性複本的每一個伺服器執行個體上都必須相同。 如需詳細資訊,請參閱<將 TDE 保護的資料庫移至另一個 SQL Server>。

權限 (可用性資料庫)

需要資料庫的 ALTER 權限。

相關工作 (可用性資料庫)

工作

主題

準備次要資料庫 (手動)

針對可用性群組手動準備次要資料庫 (SQL Server)

將次要資料庫聯結至可用性群組 (手動)

將次要資料庫聯結至可用性群組 (SQL Server)

修改可用性資料庫的數目

搭配回到頁首連結使用的箭頭圖示[回到頁首]

相關內容

搭配回到頁首連結使用的箭頭圖示[回到頁首]

請參閱

概念

AlwaysOn 可用性群組概觀 (SQL Server)

容錯移轉叢集和 AlwaysOn 可用性群組 (SQL Server)

AlwaysOn 用戶端連接性 (SQL Server)