本文為機器翻譯文章。如需檢視英文版,請選取 [原文] 核取方塊。您也可以將滑鼠指標移到文字上,即可在快顯視窗顯示英文原文。
譯文
原文

在 SharePoint Server 2013 中跨多個伺服器陣列,使用 UPRE 來複寫使用者設定檔

SharePoint 2013
 

適用版本:SharePoint Server 2013

上次修改主題的時間:2016-12-16

摘要:了解如何跨多個 SharePoint 伺服器陣列,使用「使用者設定檔複寫引擎」來複寫使用者設定檔。

管理員可使用「使用者設定檔複寫引擎」,將使用者設定檔從一個 SharePoint 伺服器陣列複寫到另一個。

本文內容:

開始這項工作之前,請閱讀下列文章:

注意事項 附註:
因為 SharePoint 2013 是在 Internet Information Services (IIS) 中以網站的形式運作,所以系統管理員和使用者要憑藉瀏覽器提供的協助工具功能。SharePoint 2013 支援受支援瀏覽器的協助工具功能。如需詳細資訊,請參閱下列資源:

大型國際組織可在廣大的地理區部署多個 SharePoint 伺服器陣列,以保留本機使用者的 SharePoint 我的網站。例如,下圖顯示在歐洲擁有 1000 名使用者的一個伺服器陣列、在美洲擁有 1000 名使用者的一個伺服器陣列,以及在亞洲擁有 1000 名使用者的一個伺服器陣列。您已在歐洲部署 User Profile Service 應用程式。當您將所有伺服器陣列的使用者設定檔資訊複寫到其他所有伺服器陣列時,每個地區的使用者都可以在本機的伺服器陣列上檢視所有使用者設定檔資訊。這可減少伺服器陣列之間的流量並藉此增進效能。它也能改善可用性,因為當某個伺服器陣列上的 User Profile Service 失敗時,並不會影響其他伺服器陣列。

圖:使用「使用者設定檔複寫引擎」,將一個伺服器陣列的使用者檔案複寫到多個伺服器陣列

這個圖表說明如何使用「使用者設定檔複製引擎」,將使用者設定檔從中央伺服器陣列複寫到兩個區域性伺服器陣列

有三種複寫類型:

  • 完整複寫

    藉由使用完整複寫,您可以將所有使用者設定檔資訊及部分社交資料 (即追蹤的朋友、追蹤的雜湊標記和 @mentions) 複寫到其他伺服器陣列。當您必須執行下列工作時,通常會執行完整複寫:

    • 將使用者設定檔資訊從現有的 User Profile Service 應用程式,複寫到最近部署的 User Profile Service 應用程式。

    • 從現有的 User Profile Service 應用程式設定檔資料庫或本機資料庫複製使用者設定檔資料,藉此復原資料。

    若要執行完整複寫,您必須是來源和目的地伺服器陣列上的 User Profile Service 應用程式的管理員。完整複寫是在完整複寫之啟動者的安全性內容下執行。

  • 累加複寫

    累加複寫會複寫完整複寫後所做的變更。完成完整複寫後,您必須在儲存變更記錄的天數上限所指定的時間限制之前啟動累加複寫。這是為了確保偵測和複寫個別的變更。依預設,變更記錄會儲存 14 天。儲存間隔越長,使用者設定檔複寫引擎複寫變更的時間就越長。

    執行此主題稍後所說明的累加複寫 Cmdlet 後,會在定期的間隔自動執行累加複寫。預設間隔為 5 秒。

    累加複寫是透過複寫引擎服務執行。因此在來源和目的地伺服器陣列中,請確定在您將執行累加複寫的帳戶下啟動複寫引擎服務。您也必須是 User Profile Service 應用程式的管理員群組成員。

    注意事項 附註:
    完整複寫與累加複寫之間存在明顯的差異。完整複寫同一時間僅支援一個來源至一個目的地的複寫,而累加複寫支援一個來源至多個目的地的複寫。
  • 復原複寫

    復原複寫可完全複寫其資訊未正確複寫的一名特定使用者或一組使用者。

    當您在來源與目的地伺服器陣列的使用者設定檔資訊中偵測到不符情況時,可使用復原複寫。其類似完整複寫,但有一點不同,亦即您必須提供帳戶檔案,指定想要從來源伺服器陣列複寫到目的地伺服器陣列的使用者設定檔。

執行完整複寫或累加複寫之前,請執行下列工作:

確定每個來源和目的地伺服器陣列已存在 User Profile Service 應用程式的執行個體。

  1. 確認正在執行此程序的使用者帳戶具有 User Profile Service 應用程式的「管理設定檔」權限。如需詳細資訊,請參閱委派管理 SharePoint Server 2013 的 User Profile Service 應用程式

  2. 在管理中心網站的 [應用程式管理] 區段中,按一下 [管理服務應用程式]。

  3. 確定 User Profile Service 應用程式的執行個體至少有一個可用,且狀態為 [已啟動]。

SharePoint 2010 Administration Toolkit 隨附使用者設定檔複寫引擎。若要使用「使用者設定檔複寫引擎」,請先下載和安裝 SharePoint 2010 Administration Toolkit。如需詳細資訊,請參閱Installing the SharePoint 2010 Administration Toolkit (SharePoint Server 2010)

預設會停用網路分散式交易協調器 (DTC) 存取。未在伺服器上啟用網路 DTC 存取時,應用程式只能使用本機電腦所保存的交易。例如,如果停用網路 DTC 存取,則交易無法從本機電腦流動到不同電腦上執行的資料庫。若要改善複寫效能,您必須啟用網路 DTC 存取。

如需詳細資訊,請參閱啟用網路 DTC 存取 (https://go.microsoft.com/fwlink/p/?LinkID=231413)。

複寫使用者設定檔資訊前,請在所有相關的伺服器陣列上備份下列 User Profile Service 應用程式資料庫:

  • 設定檔資料庫 - 用於儲存使用者設定檔資訊。

  • 同步處理資料庫 - 用於儲存設定與臨時資訊,以從 AD DS 等外部來源同步處理設定檔資料。

  • 社交標記資料庫 - 用於儲存使用者建立的社交標記與備註。每個社交標記與備註會關聯到一個設定檔 ID。

如需詳細資訊,請參閱在 SharePoint Server 2013 中備份 User Profile Service 應用程式中的<使用 SQL Server 工具備份 User Profile Service 應用程式資料庫>一節。

您必須在來源和目的地伺服器陣列上新增 User Profile Service 應用程式的對象。使用者設定檔複寫引擎會使用對象來識別來源和目的地伺服器陣列上的使用者設定檔。如需詳細資訊,請參閱Add, edit, or delete an audience (SharePoint Server 2010)

您必須設定受信任的 我的網站 主機位置以確保正確複寫使用者設定檔資料。指定 我的網站 主機位置後,會將使用者重新導向到其帳戶所要的單一 我的網站 主機位置,不論使用者在嘗試建立或存取其 我的網站 時所在的瀏覽位置為何。如需詳細資訊,請參閱Add or delete a trusted My Site host location (SharePoint Server 2010)

您可以使用 [Start-SPProfileServiceFullReplication] Cmdlet,將所有選取的使用者設定檔資訊和社交資料 (包括社交標記、記事與評等) 從來源 User Profile Service 應用程式複寫到目的地 User Profile Service 應用程式。

使用者設定檔複寫引擎不會複寫來自 Active Directory 網域服務 (AD DS) 的資料,因為它會在設定檔同步處理期間從 AD DS 自動更新。

注意事項 附註:
由於使用者設定檔複寫引擎會先刪除大量的舊項目,然後再執行完整複寫,因此請確定只在主位置執行完整複寫,該位置則是根據目前處理之使用者的 我的網站 之 我的網站 主機位置。可能的問題是即使該位置不是帳戶的實際主位置, User Profile Service 應用程式仍可能出現使用者的帳戶。例如,使用者 A 在伺服器陣列 A 中具有 我的網站,使用者 B 則在伺服器陣列 B 中具有 我的網站。使用者 A 在伺服器陣列 B 的使用者 B 所擁有的 我的網站 中留下註解。隨後在伺服器陣列 B 中建立使用者 A 的新使用者設定檔項目,並且僅儲存使用者 A 留下的註解。若要在此情況下執行完整複寫,您必須將伺服器陣列 A (主位置) 中的 User Profile Service 應用程式設為複寫來源。如果將伺服器陣列 B 中的遠端 User Profile Service 應用程式設為複寫來源,在伺服器陣列 B 針對使用者 A 建立的使用者設定檔及其註解都會遺失。
使用 Windows PowerShell 執行完整複寫
  1. 確認您具備下列成員資格:

    • SQL Server 執行個體上的 securityadmin 固定伺服器角色。

    • 要更新的所有資料夾上的 db_owner 固定資料庫角色。

    • 要執行 Windows PowerShell Cmdlet 的伺服器上的 Administrators 群組。

    • 來源和目的地伺服器陣列的 User Profile Service 應用程式上的「管理設定檔」權限和「管理社交資料」權限。

    管理員可以使用 Add-SPShellAdmin Cmdlet 授與使用 SharePoint 2013 Cmdlet 的權限。

    注意事項 附註:
    如果您不具備上述權限,請連絡安裝程式管理員或 SQL Server 管理員要求權限。如需 Windows PowerShell 權限的其他資訊,請參閱<Add-SPShellAdmin>。
  2. 啟動 SharePoint 2013 管理命令介面。

    • 若為 Windows Server 2008 R2:

      • 在 [開始] 功能表上,依序按一下 [所有程式]、[Microsoft SharePoint 2013 產品] 和 [SharePoint 2013 管理命令介面]。

    • 若為 Windows Server 2012:

      • 在 [開始] 畫面上按一下 [SharePoint 2013 管理命令介面]。

        若 [SharePoint 2013 管理命令介面] 不在 [開始] 畫面上:

      • 以滑鼠右鍵依序按一下 [電腦]、[所有應用程式] 與 [SharePoint 2013 管理命令介面]。

    如需如何與Windows Server 2012互動的詳細資訊,請參閱< Windows Server 2012 一般管理工作及瀏

  3. 在 Windows PowerShell 命令提示字元中,輸入下列命令:

    Start-SPProfileServiceFullReplication -Destination <String> -Source <String> [-EnableInstrumentation <SwitchParameter>] [-MaxNumberOfThreads <Int32>] [-Properties <String[]>]
    

    其中:

    • Destination:指定要將使用者設定檔複寫到的「我的網站主機」的 URL,例如,http://euro.contoso.com:8081/my。

    • Source:指定要從中擷取使用者設定檔之「我的網站主機」的 URL,例如,http://hq.contoso.com:8081/my。

    • EnableInstrumentation:藉由使用檢測記錄啟用詳細的記錄。

    • MaxNumberOfThreads:指定執行「使用者設定檔複寫引擎」的伺服器上允許的複寫執行緒數上限。值的範圍介於 1 到 100 之間。預設值是 25。正在執行的實際執行緒數目將由「使用者設定檔複寫引擎」動態判定。

    • Properties:指定要複寫哪些使用者設定檔屬性。例如,"FirstName" 或 "AboutMe"。您也可以使用 Get-SPProfilePropertyCollection Cmdlet 來傳回所有使用者設定檔屬性的集合。預設值會傳回所有使用者設定檔屬性。請注意,將在下一次匯入使用者設定檔時覆寫對應至外部資料來源的屬性。

    例如,對於 http://America.contoso.com 上的目的地伺服器陣列和 http://Europe.contoso.com 上的來源伺服器陣列,命令為:

    Start-SPProfileServiceFullReplication -Destination http://America.contoso.com -Source http://Europe.contoso.com -EnableInstrumentation -MaxNumberOfThreads 15 -Properties "AboutMe", "PictureURL"
    

    注意事項 附註:
    建議您在執行命令列管理工作時使用 Windows PowerShell。Stsadm 命令列工具已過時,但為與舊版產品相容,仍會隨附提供。

    在起始索引處開始複寫,並可按下 CTRL+C 停止複寫。

    完整複寫可能需要數小時到數天,取決於許多因素,如網路的效能、正在複寫的資料量,及為複寫配置的執行緒數目。

    如果完整複寫中斷,請檢查記錄檔前次成功的項目,並使用 StartAtIndex 參數重新啟動複寫程序。

    如需詳細資訊,請參閱Start-SPProfileServiceFullReplication

您可以使用 Start-SPProfileServiceIncrementalReplication Cmdlet 來複寫完整複寫之後所做的變更。

使用 Windows PowerShell 執行累加複寫
  1. 確認您具備下列成員資格:

    • SQL Server 執行個體上的 securityadmin 固定伺服器角色。

    • 要更新的所有資料夾上的 db_owner 固定資料庫角色。

    • 要執行 Windows PowerShell Cmdlet 的伺服器上的 Administrators 群組。

    管理員可以使用 Add-SPShellAdmin Cmdlet 授與使用 SharePoint 2013 Cmdlet 的權限。

    注意事項 附註:
    如果您不具備上述權限,請連絡安裝程式管理員或 SQL Server 管理員要求權限。如需 Windows PowerShell 權限的其他資訊,請參閱<Add-SPShellAdmin>。
  2. 啟動 SharePoint 2013 管理命令介面。

    • 若為 Windows Server 2008 R2:

      • 在 [開始] 功能表上,依序按一下 [所有程式]、[Microsoft SharePoint 2013 產品] 和 [SharePoint 2013 管理命令介面]。

    • 若為 Windows Server 2012:

      • 在 [開始] 畫面上按一下 [SharePoint 2013 管理命令介面]。

        若 [SharePoint 2013 管理命令介面] 不在 [開始] 畫面上:

      • 以滑鼠右鍵依序按一下 [電腦]、[所有應用程式] 與 [SharePoint 2013 管理命令介面]。

    如需如何與Windows Server 2012互動的詳細資訊,請參閱< Windows Server 2012 一般管理工作及瀏

  3. 第一次執行累加複寫指令程式,您必須設定可複寫引擎服務的認證。您可以使用Get-credential指令程式來擷取這些認證。如需詳細資訊,請參閱Get-credential (https://go.microsoft.com/fwlink/p/?LinkID=113311)。

  4. 確定在來源伺服器陣列的 User Profile Service 帳戶認證下,啟動和執行來源和目的地伺服器陣列上的複寫引擎服務。

  5. 在來源和目的地伺服器陣列上,指派帳戶作為 User Profile Service 應用程式的管理員。若要這麼做,請在 管理中心 的 [應用程式管理] 區段中,按一下 [管理服務應用程式]。按一下具有 User Profile Service 應用程式的列,然後按一下功能區的 [管理員] 。在 [管理員] 對話方塊中,將來源伺服器陣列上的 User Profile Service 帳戶新增為管理員,然後將「完全控制」授與管理員。

  6. 針對 User Profile Service 應用程式,使用管理員帳戶登入來源伺服器陣列。在 Windows PowerShell 命令提示字元上,輸入下列命令:

    Start-SPProfileServiceIncrementalReplication -Destination <String[]> -Source <String> [-Credential <PSCredential>] [-EnableInstrumentation <SwitchParameter>] [-Properties <String[]>]
    

    其中:

    • Destination:指定要將使用者設定檔複寫到的「我的網站主機」的 URL,例如,http://euro.contoso.com:8081/my。

    • Source:指定要從中擷取使用者設定檔之「我的網站主機」的 URL,例如,http://hq.contoso.com:8081/my。

    • 認證: 指定的複寫引擎服務認證執行此指令程式的第一次或任何時候您想要變更的複寫引擎服務認證。若要取得的使用者設定檔複寫引擎服務認證,請使用Get-credential指令程式。如需詳細資訊,請參閱Get-credential (https://go.microsoft.com/fwlink/p/?LinkID=113311)。

    • EnableInstrumentation:藉由使用檢測記錄啟用詳細的記錄。

    • Properties:指定要複寫哪些使用者設定檔屬性。例如,"FirstName" 或 "AboutMe"。您也可以使用 Get-SPProfilePropertyCollection Cmdlet 來傳回所有使用者設定檔屬性的集合。預設值會傳回所有使用者設定檔屬性。請注意,將在下一次匯入使用者設定檔時覆寫對應至外部資料來源的屬性。

    例如,對於 http://America.contoso.com 上的目的地伺服器陣列和 http://Europe.contoso.com 上的來源伺服器陣列,命令為:

    Start-SPProfileServiceIncrementalReplication -Destination http://America.contoso.com -Source http://Europe.contoso.com -Credential $mycredential -EnableInstrumentation -Properties "AboutMe", "PictureURL"
    

    如需詳細資訊,請參閱Start-SPProfileServiceIncrementalReplication

    注意事項 附註:
    建議您在執行命令列管理工作時使用 Windows PowerShell。Stsadm 命令列工具已過時,但為與舊版產品相容,仍會隨附提供。
  7. 如果無論如何都需要停止累加複寫,請使用 Stop-SPProfileServiceIncrementalReplication Cmdlet。請不要使用 Windows MMC 嵌入式管理單元來手動啟動或停止 User Profile Service 複寫引擎服務,藉此啟動或停止累加複寫。

完整複寫程序不會使用變更權杖,並且會覆寫目的地的資料 (無論您對他做哪些變更)。因此,我們建議您移除完整複寫後,立即執行的前一次累加複寫所建立的所有變更權杖檔案 (每組唯一的來源-目的地配對一個)。 如此能保證在下一次針對來源-目的地配對執行累加複寫時,它可從來源擷取全新的權杖,而不會依賴檔案中的過時權杖。依預設,會在安裝使用者設定檔複寫引擎的伺服器上,將權杖檔案儲存於 %CommonProgramFiles%\Microsoft\SharePoint 2010 Administration Toolkit\Replication Engine\log,並以 <SourceServerName>#<DestinationServerName>_Timestamp_UPS 格式命名該檔案,其中 <SourceServerName> 是來源伺服器的名稱,<DestinationServerName> 則是目的地伺服器的名稱。

雖然會追蹤來源伺服器陣列上移除的同事,但使用者設定檔複寫引擎不會複寫帳戶刪除,即使 SharePoint 元件在變更記錄中捕捉到它們也一樣。自前次複寫後,如果曾經從來源伺服器陣列刪除任何帳戶,您必須在目的地伺服器陣列上手動移除這些帳戶。

您可以使用 start-spprofileservicerecoveryreplication 執行復原複寫。

注意事項 附註:
復原程序會複寫傳遞至 Cmdlet 之參數所指定的來源帳戶之相同屬性子集,若未指定則全部複寫。但在復原複寫期間,會從來源使用者設定檔直接擷取屬性,而非從變更記錄。這意味即使屬性未變更,或因某些原因未在變更記錄儲存區中記錄變更,也會擷取和更新那些屬性。
使用 Windows PowerShell 執行復原複寫
  1. 確認您具備下列成員資格:

    • SQL Server 執行個體上的 securityadmin 固定伺服器角色。

    • 要更新的所有資料夾上的 db_owner 固定資料庫角色。

    • 要執行 Windows PowerShell Cmdlet 的伺服器上的 Administrators 群組。

    管理員可以使用 Add-SPShellAdmin Cmdlet 授與使用 SharePoint 2013 Cmdlet 的權限。

    注意事項 附註:
    如果您不具備上述權限,請連絡安裝程式管理員或 SQL Server 管理員要求權限。如需 Windows PowerShell 權限的其他資訊,請參閱<Add-SPShellAdmin>。
  2. 啟動 SharePoint 2013 管理命令介面。

    • 若為 Windows Server 2008 R2:

      • 在 [開始] 功能表上,依序按一下 [所有程式]、[Microsoft SharePoint 2013 產品] 和 [SharePoint 2013 管理命令介面]。

    • 若為 Windows Server 2012:

      • 在 [開始] 畫面上按一下 [SharePoint 2013 管理命令介面]。

        若 [SharePoint 2013 管理命令介面] 不在 [開始] 畫面上:

      • 以滑鼠右鍵依序按一下 [電腦]、[所有應用程式] 與 [SharePoint 2013 管理命令介面]。

    如需如何與Windows Server 2012互動的詳細資訊,請參閱< Windows Server 2012 一般管理工作及瀏

  3. 執行復原複寫之前,您必須準備帳戶檔案。此檔案可能是完整複寫執行個體期間所建立的失敗帳戶檔案,或您也可以手動建立 .txt 或 .rcv 檔案,在每行包含一個使用者設定檔帳戶,例如:

    Domain1\User1

    Domain1\User2

    Domain2\User1

    Domain2\User2

    Domain2\User3

  4. 在 Windows PowerShell 命令提示字元上,輸入下列命令:

    Start-SPProfileServiceRecoveryReplication -Destination <String> -FileName <String> -Source <String> [-EnableInstrumentation <SwitchParameter>] [-Properties <String[]>]
    

    其中:

    • Destination:指定要將使用者設定檔複寫到的「我的網站主機」的 URL,例如,http://euro.contoso.com:8081/my。

    • Source:指定要從中擷取使用者設定檔之「我的網站主機」的 URL,例如,http://hq.contoso.com:8081/my。

    • FileName:指定帳戶檔案的位置。此檔案可能是完整複寫執行個體期間所建立的失敗帳戶檔案,或您也可以手動建立 .txt 或 .rcv 檔案,在每行包含一個使用者設定檔帳戶。

    • EnableInstrumentation:藉由使用檢測記錄啟用詳細的記錄。

    • Properties:指定要複寫哪些使用者設定檔屬性。例如,"FirstName" 或 "AboutMe"。您也可以使用 Get-SPProfilePropertyCollection Cmdlet 來傳回所有使用者設定檔屬性的集合。預設值會傳回所有使用者設定檔屬性。請注意,將在下一次匯入使用者設定檔時覆寫對應至外部資料來源的屬性。

    例如,對於 http://America.contoso.com 上的目的地伺服器陣列和 http://Europe.contoso.com 上的來源伺服器陣列,命令如下所示:

    Start-SPProfileServiceRecoveryReplication -Destination http://America.contoso.com -FileName "d:\accounts.txt" -Source http://Europe.contoso.com -EnableInstrumentation -Properties "AboutMe", "PictureURL"
    

    如需詳細資訊,請參閱Start-SPProfileServiceRecoveryReplication

注意事項 附註:
建議您在執行命令列管理工作時使用 Windows PowerShell。Stsadm 命令列工具已過時,但為與舊版產品相容,仍會隨附提供。

您可以使用 [EnableInstrumentation] 參數,啟用和檢視檢測記錄來監視複寫程序。啟用檢測記錄後,Cmdlet 會在您安裝使用者設定檔複寫引擎的伺服器,於名為 Full_<TmeStamp> 的檔案 (適用於完整複寫) 或 Inc_UPS_<DestinationServerName> (適用於累加複寫) 檔案的 %CommonProgramFiles%\Microsoft\SharePoint 2010 Administration Toolkit\Replication Engine\log 下方記錄檢測資訊。

下表列出累加複寫期間,使用者設定檔複寫引擎所產生的記錄檔。

累加複寫的記錄檔

記錄檔 說明

Inc_UPS_Err

儲存錯誤訊息。

Inc_UPS_Err_Acct

儲存複寫期間發生錯誤的帳戶。這些帳戶由復原複寫所使用。

Inc_UPS_Instrumentation

如果使用 EnableInstrumentation 參數,會在此記錄檔中寫入詳細記錄項目。

IncrementalManager_Err_Start

儲存累加複寫期間擷取的高階例外狀況。

https://technet.microsoft.com/zh-tw/library/ee906542.aspx
顯示: