設定管理點的資料庫複本

 

適用於: System Center 2012 Configuration Manager, System Center 2012 Configuration Manager SP1, System Center 2012 Configuration Manager SP2, System Center 2012 R2 Configuration Manager, System Center 2012 R2 Configuration Manager SP1

您可以設定主要網站中的 System Center 2012 Configuration Manager 管理點以使用網站資料庫的複本。 次要網站的管理點不支援資料庫複本。

在每個主要網站上,您可以設定一部或多部執行 SQL Server 的電腦以裝載資料庫複本,而該網站上的多個管理點就可以使用相同的資料庫複本。 當管理點使用資料庫複本時,該管理點會從裝載資料庫複本的 SQL Server 電腦要求資料。 由於要求對象是資料庫複本伺服器並取代對網站資料庫伺服器的直接要求,因此當大量的用戶端經常提出用戶端原則的要求時,此設定將有助於降低網站資料庫伺服器的 CPU 處理需求。

當您使用資料庫複本時,請定期監視網站資料庫伺服器以及每部資料庫複本伺服器,以確保每個伺服器之間的複寫正常運作,以及資料庫複本伺服器的效能足以滿足您所需的網站和用戶端效能。

請利用以下各節來協助您設定及管理資料庫複本:

  • 使用資料庫複本的設定

  • 使用資料庫複本的操作

    • 解除安裝資料庫複本

    • 解除安裝網站伺服器

    • 移動網站伺服器資料庫

使用資料庫複本的設定

若要使用資料庫複本,必須完成下列所有設定:

  • 網站資料庫伺服器和資料庫複本伺服器上的 SQL Server 都必須安裝 [SQL Server 複寫]。

  • 網站資料庫必須發佈資料庫複本。

  • 將裝載資料庫複本的每個遠端 SQL Server 電腦都必須訂閱已發佈的資料庫複本。

  • 您必須設定將使用資料庫複本的每個管理點,以便與資料庫複本伺服器和資料庫複本通訊。

  • 將裝載資料庫複本的每個 SQL Server 電腦都必須擁有自我簽署憑證,使管理點能在遠端電腦上使用該憑證來與資料庫複本伺服器通訊。

  • 您必須設定使用中的 SQL Server,使網站資料庫和每個資料庫複本都能支援 2 GB 的 [最大文字複寫大小]。 如需有關如何為 SQL Server 2012 進行設定的範例,請參閱 Configure the max text repl size Server Configuration Option (設定最大文字複寫大小伺服器設定選項)

若要設定資料庫複本,您必須完成下列各節中的程序:

  • 設定網站資料庫伺服器以發佈資料庫複本

  • 設定資料庫複本伺服器

  • 設定管理點以使用資料庫複本

  • 設定資料庫複本伺服器的自我簽署憑證

從 Configuration Manager SP1 開始,您也必須完成下一節中的程序:

  • 設定資料庫複本伺服器的 SQL Server Service Broker

設定網站資料庫伺服器以發佈資料庫複本

使用下列程序作為範例,以引導您在 Windows Server 2008 R2 電腦上設定網站資料庫伺服器來發佈資料庫複本。 如果您有不同的作業系統版本,請參考您的作業系統文件並視需要調整您在此程序中的步驟。

設定網站資料庫伺服器

  1. 在網站資料庫伺服器上,設定 SQL Server Agent 為自動啟動。

  2. 在網站資料庫伺服器上,以 ConfigMgr_MPReplicaAccess 的名稱建立本機使用者群組。 您必須將您在此網站上使用的每個資料庫複本伺服器的電腦帳戶新增到此群組中,使這些資料庫複本伺服器與已發佈的資料庫複本同步。

  3. 在網站資料庫伺服器上,以 ConfigMgr_MPReplica 的名稱設定檔案共用。

  4. 將下列權限新增至 ConfigMgr_MPReplica 共用:

    System_CAPS_note注意事項

    如果 SQL Server Agent 使用的帳戶與本機系統帳戶不同,請使用以下清單中的該帳戶名稱來取代 SYSTEM。

    - **共用權限**:
    
        - SYSTEM:**寫入**
    
        - ConfigMgr\_MPReplicaAccess:**讀取**
    
    - **NTFS 共用權限**:
    
        - SYSTEM:**完全控制**
    
        - ConfigMgr\_MPReplicaAccess:\[讀取\]、\[讀取和執行\]、\[列出資料夾內容\]  
    
  5. 使用 SQL Server Management Studio 以連線至站台資料庫並執行下列預存程序進行查詢:spCreateMPReplicaPublication

當完成預存程序時,網站資料庫伺服器會設定為發佈資料庫複本。

設定資料庫複本伺服器

資料庫複本伺服器是執行 SQL Server 的電腦,並裝載網站資料庫的複本供管理點使用。 資料庫複本伺服器會依照固定排程,與網站資料庫伺服器發佈的資料庫複本同步處理其資料庫的複本。

資料庫複本伺服器必須符合與網站資料庫伺服器相同的需求。 不過,資料庫複本伺服器執行的 SQL Server 版本可以與網站資料庫伺服器使用的版本不同。 如需 SQL Server 支援版本的相關資訊,請參閱 主題中的一節。No text is shown for link 'c1e93ef9-761f-4f60-8372-df9bf5009be0'. The title of the linked topic might be empty.c1e93ef9-761f-4f60-8372-df9bf5009be0#BKMK_SupConfigSQLDBconfig

System_CAPS_important重要事項

SQL Server Service 在裝載複本資料庫的電腦上必須以系統帳戶的身分執行。

使用下列程序作為範例,以引導您在 Windows Server 2008 R2 電腦上設定資料庫複本伺服器。 如果您有不同的作業系統版本,請參考您的作業系統文件並視需要調整您在此程序中的步驟。

設定資料庫複本伺服器

  1. 在資料庫複本伺服器上,設定 SQL Server Agent 為自動啟動。

  2. 在資料庫複本伺服器上,使用 [SQL Server Management Studio] 以連線至本機伺服器,然後瀏覽至 [複寫] 資料夾,按一下 [本機訂閱] 並選取 [新增訂閱] 以啟動 [新增訂閱精靈]:

    1. 在 [發行集] 頁面的 [發行者] 清單方塊中,選取 [尋找 SQL Server 發行者] 並輸入網站資料庫伺服器的名稱,然後按一下 [連接]。

    2. 選取 [ConfigMgr_MPReplica],然後按 [下一步]。

    3. 在 [散發代理程式位置] 頁面中,選取 [在訂閱者端執行每一個代理程式 (提取訂閱)],然後按 [下一步]。

    4. 在 [訂閱者] 頁面上,執行以下其中一項:

      • 從資料庫複本伺服器選取現有的資料庫供資料庫複本使用,然後按一下 [確定]。

      • 選取 [新增資料庫] 為資料庫複本建立新的資料庫。 在 [新增資料庫] 頁面上,指定資料庫名稱,然後按一下 [確定]。

    5. 按 [下一步] 以繼續。

    6. 在 [散發代理程式安全性] 頁面中,在對話方塊的 [訂閱者連接] 資料列中按一下內容按鈕 [(.…)],然後設定連接的安全性設定。

      System_CAPS_tip提示

      內容按鈕 [(.…)] 位於顯示方塊的第四欄中。

      安全性設定:

      • 設定執行散發代理程式處理的帳戶 (處理帳戶):

        • 如果 SQL Server Agent 以本機系統身分執行,請選取 [以 SQL Server Agent 服務帳戶執行 (這不是建議的安全性最佳作法)。]。

        • 如果您使用不同帳戶來執行 SQL Server Agent,請選取 [以下列 Windows 帳戶執行],然後設定該帳戶。 您可以指定 Windows 帳戶或 SQ Server 帳戶。

        System_CAPS_important重要事項

        您必須將執行散發代理程式權限的帳戶授與發行者進行提取訂閱。 如需設定這些權限的資訊,請參閱 SQL Server TechNet 文件庫中的 Distribution Agent Security (散發代理程式安全性)

      • 針對 [連接到散發者],請選取 [藉由模擬處理帳戶]。

      • 針對 [連接到訂閱者],請選取 [藉由模擬處理帳戶]。

      在設定連接安全性設定之後,請按一下 [確定] 儲存設定,然後按 [下一步]。

    7. 在 [同步排程] 頁面的 [代理程式排程] 清單方塊中,選取 [定義排程],然後設定 [新增作業排程]。 設定 [每日] 的頻率,並每隔 [5 分鐘] 重複一次,將持續時間設為 [沒有結束日期]。 按 [下一步] 儲存排程,然後再按一次 [下一步]。

    8. 在 [精靈動作] 頁面中,選取 [建立訂閱] 的核取方塊,然後按 [下一步]。

    9. 在 [完成精靈] 頁面中,按一下 [完成],然後按一下 [關閉] 以完成精靈。

  3. 檢閱同步處理狀態以確認訂閱是否成功:

    - 在訂閱者電腦上:
    
        - 在 \[SQL Server Management Studio\] 中,連線至資料庫複本伺服器並展開 \[複寫\]。
    
        - 展開 \[本機訂閱\],以滑鼠右鍵按一下網站資料庫發行的訂閱,然後選取 \[檢視同步處理的狀態\]。
    
    - 在發行者電腦上:
    
        - 在 \[SQL Server Management Studio\] 中,連線至網站資料庫電腦,以滑鼠右鍵按一下 \[複寫\] 資料夾,然後選取 \[啟動複寫監視器\]。
    
  4. 若要啟用資料庫複本的 Common Language Runtime (CLR) 整合,請使用 SQL Server Management Studio 以連線至資料庫複本伺服器上的資料庫複本,並執行下列預存程序進行查詢:exec sp_configure 'clr enabled', 1; RECONFIGURE WITH OVERRIDE

  5. 針對使用資料庫複本伺服器的每個管理點,將管理點電腦帳戶新增至該資料庫複本伺服器上的本機 [Administrators] 群組。

    System_CAPS_tip提示

    此步驟對於在資料庫複本伺服器上執行的管理點來說並非必要。

資料庫複本現在已備妥可供管理點使用。

設定管理點以使用資料庫複本

您可以在主要網站上設定管理點,使您在安裝管理點角色時可使用資料庫複本,或者您可以重新設定現有的管理點來使用資料庫複本。

使用下列資訊來設定管理點以使用資料庫複本:

  • **若要設定新的管理點:**在您用來安裝管理點的精靈 [管理點資料庫] 頁面上,選取 [使用資料庫複本],並為裝載資料庫複本的電腦指定 FQDN。 接下來,在 [ConfigMgr 網站資料庫名稱] 中指定資料庫複本在該電腦上的資料庫名稱。

  • 若要設定之前安裝的管理點:開啟管理點的內容頁面,選取 [管理點資料庫] 索引標籤,選取 [使用資料庫複本],然後為裝載資料庫複本的電腦指定 FQDN。 接下來,在 [ConfigMgr 網站資料庫名稱] 中指定資料庫複本在該電腦上的資料庫名稱。

  • 針對會使用資料庫複本的每個管理點,您必須手動將管理點伺服器的電腦帳戶加入資料庫複本的 db_datareader 角色。

除了設定管理點以使用資料庫複本伺服器以外,您還必須在管理點的 [IIS] 中啟用 [Windows 驗證]:

  1. 開啟 [Internet Information Services (IIS) 管理員]。

  2. 選取管理點使用的網站,並開啟 [驗證]。

  3. 將 [Windows 驗證] 設為 [已啟用],然後關閉 [Internet Information Services (IIS) 管理員]。

設定資料庫複本伺服器的自我簽署憑證

您必須在資料庫複本伺服器上建立自我簽署憑證,並且讓使用該資料庫複本伺服器的每個管理點都能使用此憑證。

該憑證會自動提供給安裝在資料庫複本伺服器上的管理點使用。 不過,您必須先匯出憑證,然後將其新增至遠端管理點上的 [受信任的人] 憑證存放區中,遠端管理點才能使用此憑證。

使用下列程序作為範例,以引導您在 Windows Server 2008 R2 電腦的資料庫複本伺服器上設定自我簽署憑證。 如果您有不同的作業系統版本,請參考您的作業系統文件並視需要調整您在這些程序中的步驟。

設定資料庫複本伺服器的自我簽署憑證

  1. 在資料庫複本伺服器上,使用系統管理權限開啟 PowerShell 命令提示,然後執行下列命令:set-executionpolicy UnRestricted

  2. 複製下列 PowerShell 指令碼並使用 CreateMPReplicaCert.ps1 的名稱另存新檔。 將此檔案的複本置於資料庫複本伺服器的系統磁碟分割的根資料夾中。

      # Script for creating a self-signed certificate for the local machine and configuring SQL Server to use it. Param($SQLInstance) $ConfigMgrCertFriendlyName = \"ConfigMgr SQL Server Identification Certificate\" # Get local computer name $computerName = \"$env:computername\" # Get the sql server name #$key=\"HKLM:\SOFTWARE\Microsoft\SMS\MP\" #$value=\"SQL Server Name\" #$sqlServerName= (Get-ItemProperty $key).$value #$dbValue=\"Database Name\" #$sqlInstance_DB_Name= (Get-ItemProperty $key).$dbValue $sqlServerName = [System.Net.Dns]::GetHostByName(\"localhost\").HostName $sqlInstanceName = \"MSSQLSERVER\" $SQLServiceName = \"MSSQLSERVER\" if ($SQLInstance -ne $Null) { $sqlInstanceName = $SQLInstance $SQLServiceName = \"MSSQL$\" + $SQLInstance } # Delete existing cert if one exists function Get-Certificate($storename, $storelocation) { $store=new-object System.Security.Cryptography.X509Certificates.X509Store($storename,$storelocation) $store.Open([Security.Cryptography.X509Certificates.OpenFlags]::ReadWrite) $store.Certificates } $cert = Get-Certificate \"My\" \"LocalMachine\" | ?{$_.FriendlyName -eq $ConfigMgrCertFriendlyName} if($cert -is [Object]) { $store = new-object System.Security.Cryptography.X509Certificates.X509Store(\"My\",\"LocalMachine\") $store.Open([Security.Cryptography.X509Certificates.OpenFlags]::ReadWrite) $store.Remove($cert) $store.Close() # Remove this cert from Trusted People too... $store = new-object System.Security.Cryptography.X509Certificates.X509Store(\"TrustedPeople\",\"LocalMachine\") $store.Open([Security.Cryptography.X509Certificates.OpenFlags]::ReadWrite) $store.Remove($cert) $store.Close() } # Create the new cert $name = new-object -com \"X509Enrollment.CX500DistinguishedName.1\" $name.Encode(\"CN=\" + $sqlServerName, 0) $key = new-object -com \"X509Enrollment.CX509PrivateKey.1\" $key.ProviderName = \"Microsoft RSA SChannel Cryptographic Provider\" $key.KeySpec = 1 $key.Length = 1024 $key.SecurityDescriptor = \"D:PAI(A;;0xd01f01ff;;;SY)(A;;0xd01f01ff;;;BA)(A;;0x80120089;;;NS)\" $key.MachineContext = 1 $key.Create() $serverauthoid = new-object -com \"X509Enrollment.CObjectId.1\" $serverauthoid.InitializeFromValue(\"1.3.6.1.5.5.7.3.1\") $ekuoids = new-object -com \"X509Enrollment.CObjectIds.1\" $ekuoids.add($serverauthoid) $ekuext = new-object -com \"X509Enrollment.CX509ExtensionEnhancedKeyUsage.1\" $ekuext.InitializeEncode($ekuoids) $cert = new-object -com \"X509Enrollment.CX509CertificateRequestCertificate.1\" $cert.InitializeFromPrivateKey(2, $key, \"\") $cert.Subject = $name $cert.Issuer = $cert.Subject $cert.NotBefore = get-date $cert.NotAfter = $cert.NotBefore.AddDays(3650) $cert.X509Extensions.Add($ekuext) $cert.Encode() $enrollment = new-object -com \"X509Enrollment.CX509Enrollment.1\" $enrollment.InitializeFromRequest($cert) $enrollment.CertificateFriendlyName = \"ConfigMgr SQL Server Identification Certificate\" $certdata = $enrollment.CreateRequest(0x1) $enrollment.InstallResponse(0x2, $certdata, 0x1, \"\") # Add this cert to the trusted peoples store [Byte[]]$bytes = [System.Convert]::FromBase64String($certdata) $trustedPeople = new-object System.Security.Cryptography.X509certificates.X509Store \"TrustedPeople\", \"LocalMachine\" $trustedPeople.Open([Security.Cryptography.X509Certificates.OpenFlags]::ReadWrite) $trustedPeople.Add([Security.Cryptography.X509Certificates.X509Certificate2]$bytes) $trustedPeople.Close() # Get thumbprint from cert $sha = new-object System.Security.Cryptography.SHA1CryptoServiceProvider $certHash = $sha.ComputeHash($bytes) $certHashCharArray = \"\"; $certThumbprint = \"\"; # Format the bytes into a hexadecimal string foreach($byte in $certHash) { $temp = ($byte | % {\"{0:x}\" -f $_}) -join \"\" $temp = ($temp | % {\"{0,2}\" -f $_}) $certHashCharArray = $certHashCharArray+ $temp; } $certHashCharArray = $certHashCharArray.Replace(' ', '0'); # SQL needs the thumbprint in lower case foreach($char in $certHashCharArray) { [System.String]$myString = $char; $certThumbprint = $certThumbprint + $myString.ToLower(); } # Configure SQL to use this cert $path = \"HKLM:\SOFTWARE\Microsoft\Microsoft SQL Server\Instance Names\SQL\" $subKey = (Get-ItemProperty $path).$sqlInstanceName $realPath = \"HKLM:\SOFTWARE\Microsoft\Microsoft SQL Server\\" + $subKey + \"\MSSQLServer\SuperSocketNetLib\" $certKeyName = \"Certificate\" Set-ItemProperty -path $realPath -name $certKeyName -Type string -Value $certThumbprint # restart sql service Restart-Service $SQLServiceName -Force
    
  3. 在資料庫複本伺服器上,執行已套用至 SQL Server 設定中的下列命令:

    - 若是 SQL Server 預設執行個體:以滑鼠右鍵按一下檔案 \[CreateMPReplicaCert.ps1\],並選取 \[用 PowerShell 執行\]。 當指令碼執行時會建立自我簽署憑證,並設定 SQL Server 以使用憑證。
    
    - 若是 SQL Server 的具名執行個體:使用 PowerShell 以執行命令 **%path%\\CreateMPReplicaCert.ps1 xxxxxx**,其中 **xxxxxx** 是 SQL Server 執行個體的名稱。
    
    - 指令碼完成後,請確認 SQL Server Agent 正在執行。 否則,請重新啟動 SQL Server Agent。
    

若要設定遠端管理點使用資料庫複本伺服器的自我簽署憑證

  1. 在資料庫複本伺服器上執行下列步驟將伺服器自我簽署憑證匯出:

    1. 依序按一下 [開始] 和 [執行],然後輸入 mmc.exe。 在空白主控台中,按一下 [檔案],然後按一下 [新增/移除嵌入式管理單元]。

    2. 在 [新增或移除嵌入式管理單元] 對話方塊中,從 [可用的嵌入式管理單元] 清單中選取 [憑證],然後按一下 [新增]。

    3. 在 [憑證嵌入式管理單元] 對話方塊中,選取 [電腦帳戶],然後按 [下一步]。

    4. 在 [選取電腦] 對話方塊中,確定選取 [本機電腦: (執行這個主控台的電腦)],然後按一下 [完成]。

    5. 在 [新增或移除嵌入式管理單元] 對話方塊中,按一下 [確定]。

    6. 在主控台中,依序展開 [憑證 (本機電腦)] 和 [個人],然後選取 [憑證]。

    7. 以滑鼠右鍵按一下易記名稱為 [ConfigMgr SQL Server Identification Certificate] 的憑證,按一下 [所有工作],然後選取 [匯出]。

    8. 使用預設選項完成 [憑證匯出精靈],然後以 [.cer] 副檔名儲存憑證。

  2. 在管理點電腦上執行下列步驟,將資料庫複本伺服器的自我簽署憑證新增至管理點上的 [受信任的人] 憑證存放區。

    1. 重複上述步驟 1.a 到 1.e,設定管理點電腦上的 [憑證] 嵌入式管理單元 MMC。

    2. 在主控台中,依序展開 [憑證 (本機電腦)] 和 [受信任的人],以滑鼠右鍵按一下 [憑證],選取 [所有工作],然後選取 [匯入],啟動 [憑證匯入精靈]。

    3. 在 [匯入檔案] 頁面上,選取步驟 1.h 中儲存的憑證,然後按 [下一步]。

    4. 在 [憑證存放區] 頁面上,選取 [將所有憑證放入以下的存放區],並將 [憑證存放區] 設為 [受信任的人],然後按 [下一步]。

    5. 按一下 [完成] 關閉精靈,並完成管理點上的憑證設定。

設定資料庫複本伺服器的 SQL Server Service Broker

對於 System Center 2012 Configuration Manager SP1 及更新版本:

若要針對管理點支援資料複本的用戶端通知,您必須針對 SQL Server Service Broker 設定網站資料庫伺服器與資料庫複本伺服器之間的通訊。 您會需要設定每個資料庫中有關其他資料庫的資訊,以及在兩個資料庫之間交換憑證以進行安全通訊。

System_CAPS_note注意事項

資料庫複本伺服器必須先成功完成網站資料庫伺服器的初次同步處理,您才能使用下列程序。

下列程序不會修改 SQL Server 中設定用於網站資料庫伺服器,或資料庫複本伺服器的 Service Broker 連接埠。 此程序會設定每個資料庫使用正確的 Service Broker 連接埠與其他資料庫進行通訊。

利用下列程序設定網站資料庫伺服器和資料庫複本伺服器的 Service Broker。

若要設定資料庫複本的 Service Broker

  1. 使用 [SQL Server Management Studio] 連接至資料庫複本伺服器資料庫,然後執行下列查詢,啟用資料庫複本伺服器上的 Service Broker:ALTER DATABASE <Replica Database Name> SET ENABLE_BROKER, HONOR_BROKER_PRIORITY ON WITH ROLLBACK IMMEDIATE

  2. 接著在資料庫複本伺服器上,設定用戶端通知所使用的 Service Broker 並匯出 Service Broker 憑證。 若要執行這項操作,請執行以單一動作設定 Service Broker 並匯出憑證的 SQL Server 預存程序。 當您執行預存程序時,必須指定資料庫複本伺服器的 FQDN、資料庫複本資料庫的名稱,並指定匯出憑證檔案的位置。

    執行下列查詢在資料庫複本伺服器上設定必要的詳細資料,並且匯出資料庫複本伺服器的憑證:EXEC sp_BgbConfigSSBForReplicaDB '<Replica SQL Server FQDN>', '<Replica Database Name>', '<Certificate Backup File Path>'

    System_CAPS_note注意事項

    如果資料庫複本伺服器不是位於預設 SQL Server 執行個體上,您在這個步驟除了指定複本資料庫名稱之外,還必須指定執行個體名稱。 若要執行這項操作,請將 <複本資料庫名稱> 取代為 <執行個體名稱\複本資料庫名稱>

    從資料庫複本伺服器匯出憑證後,將憑證副本放至主網站資料庫伺服器上。

  3. 使用 [SQL Server Management Studio] 連接至主網站資料庫。 連接至主網站資料庫後,執行查詢匯入憑證,並指定資料庫複本伺服器上正在使用的 Service Broker 連接埠、資料庫複本伺服器的 FQDN,以及資料庫複本資料庫的名稱。 這樣就會將主網站資料庫設定為使用 Service Broker 與資料庫複本伺服器的資料庫進行通訊。

    執行下列查詢從資料庫複本伺服器匯入憑證,並指定必要的詳細資料:EXEC sp_BgbConfigSSBForRemoteService 'REPLICA', '<SQL Service Broker Port>', '<Certificate File Path>', '<Replica SQL Server FQDN>', '<Replica Database Name>'

    System_CAPS_note注意事項

    如果資料庫複本伺服器不是位於預設 SQL Server 執行個體上,您在這個步驟除了指定複本資料庫名稱之外,還必須指定執行個體名稱。 若要執行這項操作,請將 <複本資料庫名稱> 取代為 <執行個體名稱\複本資料庫名稱>

  4. 接著,在網站資料庫伺服器上,執行下列命令匯出網站資料庫伺服器的憑證。EXEC sp_BgbCreateAndBackupSQLCert '<Certificate Backup File Path>'

    從網站資料庫伺服器匯出憑證後,將憑證副本放至資料庫複本伺服器上。

  5. 使用 [SQL Server Management Studio] 連接至資料庫複本伺服器資料庫。 連接至資料庫複本伺服器資料庫後,執行查詢匯入憑證,並指定主網站的網站碼及網站資料庫伺服器上正在使用的 Service Broker 連接埠。 這樣就會將資料庫複本伺服器設定為使用 Service Broker 與主網站的資料庫進行通訊。

    執行下列查詢從網站資料庫伺服器匯入憑證:EXEC sp_BgbConfigSSBForRemoteService '<Site Code>', '<SQL Service Broker Port>', '<Certificate File Path>'

完成網站資料庫及資料庫複本資料庫的設定後經過幾分鐘,主網站的通知管理員就會建立從主網站資料庫到資料庫複本的用戶端通知 Service Broker 交談。

使用資料庫複本的操作

當您在網站上使用資料庫複本時,請使用以下各節中的資訊以補充解除安裝資料庫複本、解除安裝使用資料庫複本的網站,或是將網站資料庫移至新的 SQL Server 安裝的程序。 當您利用下面各節的資訊刪除發佈時,請使用指引刪除用於資料庫複本之 SQL Server 版本的交易複寫。 例如,如果您使用 SQL Server 2008 R2,請參閱如何:刪除發行集 (複寫 Transact-SQL 程式設計)

System_CAPS_note注意事項

在您還原為資料庫複本設定的網站資料庫之後,必須先重新設定每個資料庫複本並重建發佈及訂閱,才能使用資料庫複本。

解除安裝資料庫複本

您針對管理點使用資料庫複本時,可能需要解除安裝資料庫複本一段時間,然後再重新設定它以供使用。 例如,將 Configuration Manager 網站升級為新的 Service Pack 之前,必須先移除資料庫複本。 網站升級完成後,您就可以還原資料庫複本以供使用。

利用下列步驟解除安裝資料庫複本。

  1. 在 Configuration Manager 主控台的 [系統管理] 工作區中,展開 [站台組態],然後選取 [伺服器和站台系統角色],接著在詳細資料窗格中選取站台系統伺服器,且該伺服器裝載的管理點使用您要解除安裝的資料庫複本。

  2. 在 [網站系統角色] 窗格中,用滑鼠右鍵按一下 [管理點] 並選取 [內容]。

  3. 在 [管理點資料庫] 索引標籤上選取 [使用網站資料庫],設定管理點使用網站資料庫而不是資料庫複本。 然後按一下 [確定] 儲存設定。

  4. 接著使用 [SQL Server Management Studio] 執行下列工作:

    • 刪除網站伺服器資料庫上的資料庫複本發佈。

    • 刪除資料庫複本伺服器上的資料庫複本訂閱。

    • 刪除資料庫複本伺服器上的複本資料庫。

    • 停用網站資料庫伺服器上的發行與散發。 若要停用發行與散發,請以滑鼠右鍵按一下 [複寫] 資料夾,然後按一下 [停用發行與散發]。

  5. 在網站資料庫伺服器上刪除發佈、訂閱、複本資料庫及停用發佈後,資料庫複本便已解除安裝。

解除安裝網站伺服器

解除安裝發佈資料庫複本的網站之前,請先利用下列步驟清除發佈及任何訂閱。

  1. 使用 [SQL Server Management Studio] 刪除網站伺服器資料庫中的資料庫複本發佈。

  2. 使用 [SQL Server Management Studio] 刪除裝載此網站所使用資料庫複本的每一部遠端 SQL Server 上的資料庫複本訂閱。

  3. 解除安裝網站。

移動網站伺服器資料庫

將網站資料庫移至新電腦時,請利用下列步驟:

  1. 使用 [SQL Server Management Studio] 刪除網站伺服器資料庫中的資料庫複本發佈。

  2. 使用 [SQL Server Management Studio] 刪除此網站上每部資料庫複本伺服器中的資料庫複本訂閱。

  3. 將資料庫移至新的 SQL Server 電腦。 如需詳細資訊,請參閱管理站台和階層設定主題中的修改站台資料庫設定一節。

  4. 重建網站資料庫伺服器上的資料庫複本發佈。 如需詳細資訊,請參閱設定網站資料庫伺服器以發佈資料庫複本。

  5. 重建每一部資料庫複本伺服器上的資料庫複本訂閱。 如需詳細資訊,請參閱設定資料庫複本伺服器。