共用方式為


SharePoint Server 中維護 RBS

適用於:yes-img-132013 yes-img-16 2016yes-img-19 2019yes-img-seSubscription Edition no-img-sopSharePoint in Microsoft 365

您可以使用 RBS 維護程式 (SQL Server 中的一個工具),在 SharePoint Server 中執行與 RBS 相關的大部分維護工作。 RBS 維護程式執行 SharePoint Server RBS 部署的週期性廢棄項目收集與其他維護工作。 您可以使用「Windows 工作排程器服務」或「SQL Server 代理程式」,對使用 RBS 的每個資料庫排程這些工作。 您必須使用命令列參數或 XML 檔案來佈建 RBS 維護程式。 針對鏡像或複製資料庫,您可以根據任何單一執行個體執行 RBS 維護程式。

設定 RBS 廢棄項目收集

SharePoint Server 會將未參照或已刪除的 BLOB 資料自動標記為待移除。 SharePoint Server 會查看 SharePoint Server 在移除時於內容資料庫中儲存的 BLOB 識別碼清單,以計算 BLOB 的參考。 存在於 RBS 存放區表格但不存在於內容資料庫中的任何 BLOB 參考,都是假設要由 SharePoint Server 刪除,而且會標記為待移除。 不存在於內容資料庫但已在「清除遺棄項目」時間間隔之前建立的 BLOB (本文稍後所述),也會假設要由 SharePoint Server 刪除,而且會標記為待移除。

SharePoint Server 會以表格形式列出內容資料庫之 RBS 欄中的 BLOB 參考,因此每個 RBS 欄都必須具備有效的索引,才能在 RBS 中註冊。

SQL Server RBS 維護程式工具會移除 SharePoint Server 標記要移除的項目。 您應該排程在離峰期間執行清除工作,以減少對一般資料庫作業的影響。

RBS 廢棄項目收集分為下列三個步驟執行:

  • 參考掃描。 第一步是將 SharePoint Server 內容資料庫中 RBS 表格的內容與 RBS 自己內部表格的內容進行比較,並決定不再參照哪些 BLOB。 任何未參照的 BLOB 都會標記為待刪除。

  • 刪除傳播。 下一步是確定哪些 BLOB 被標記為待刪除的時間長於廢棄項目收集時間的值,並將其從 BLOB 存放區中刪除。

  • 清除遺棄項。 最後一步確定是否有任何 BLOB 存在於 BLOB 存放區,卻不存在於 RBS 表中。 如果存在這種情況,將會刪除孤立的 BLOB。

設定 RBS 廢棄項目收集

您可以指定下列 RBS 維護程式設定和資料庫設定,以設定廢棄項目收集:

  • 維護程式排程。 此設定會決定 RBS 維護程式的執行頻率。

  • 工作期間。 此設定會決定單一 RBS 維護程式工作可以執行的時間上限。 預設設定為兩個小時。

您應該設定 RBS 維護程式,讓維護程式的活動對一般活動的影響降至最低。 如需資料庫廢棄項目收集設定的資訊 (例如如何設定這些設定),請參閱<執行 RBS 維護程式>。

RBS 與 BLOB 存放區一致性檢查

RBS 維護程式會確認 RBS BLOB 參考的完整性,並修正任何發現的錯誤。 它會執行資料庫的多項一致性檢查,例如確認 RBS 欄的索引是否存在,以及確認 SharePoint Server 參考的所有 BLOB 是否存在於 RBS 中。

輔助表一致性檢查確認 RBS 輔助表是否處於一致的狀態。 執行的檢查如下:

  • 確認每個 RBS 表格欄是否具備有效的索引。

  • 確認 RBS 表格欄是否存在、已啟用、具備有效的索引,並且具備正確的欄類型。

雖然您可以停用下列一致性檢查,但是建議您不要停用,因為它們有助於確認 RBS 存放區的一致性。 預設會啟用下列一致性檢查:

  • 確認 SharePoint Server 所參照的所有 BLOB 存在於 RBS 表格中。

  • 確認沒有任何 BLOB 同時標記為正在使用和已刪除。

會記錄任何發現的問題,RBS 維護程式會建立遺失的索引項目、取消註冊遺失的欄,或者將正在使用的 BLOB 標記為未刪除,以嘗試修復這些問題。

執行 RBS 維護程式

RBS 需要您在執行 RBS 維護程式之前,為使用 RBS 的每個資料庫定義連接字串。 此字串會儲存在 RBS 安裝路徑>\Microsoft SQL 遠端 Blob 記憶體 10.50\Maintainer 資料夾中的組態檔<中,該資料夾通常會在安裝期間建立。 搭配執行 Microsoft.Data.SqlRemoteBlobs.Maintainer.exe 程式與執行 RBS 維護程式中所列的命令列參數,即可手動執行 RBS 維護程式。

您必須排程使用 RBS 之每個資料庫的個別 RBS 維護程式工作。 下列步驟說明如何排程 RBS 維護程式工作。

排程 RBS 維護程式工作

  1. 確認您具有已安裝 RBS 之資料夾的寫入權限。

  2. 針對要執行的 RBS 維護程式工作,將連接字串新增至 _<RBS 安裝目錄>_Maintainer\Microsoft.Data.SqlRemoteBlobs.Maintainer.exe.config 檔案。 RBS 安裝程式會使用安裝期間提供的連線資訊,建立一個名為 RBSMaintainerConnection 的連接字串。 不過,您必須新增每個其他資料庫的新連接字串。

    如果您是使用 Windows 驗證,則不需要加密連接字串。 您可以執行下列命令,來新增未加密連接字串:

    aspnet_regiis -pef connectionStrings 。 -prov DataProtectionConfigurationProvider

    rename web.config Microsoft.Data.SqlRemoteBlobs.Maintainer.exe.config

    如果您是使用 SQL 驗證,則 RBS 維護程式連接字串必須為加密格式。 因此,若要新增連接字串,則必須加密新字串,或必須解密所有連接字串。 一次必須新增一個加密字串。 不過,您可以使用 %windir%\Microsoft.net\Framework\ <版本>\Aspnet_regiis.exe 工具同時解密所有連接字串,此工具會在 Microsoft .NET Framework 中散發。

    執行下列命令以解密連接字串,並將結果儲存在 Web.config 檔案中:

    rename Microsoft.Data.SqlRemoteBlobs.Maintainer.exe.config web.config

    aspnet_regiis -pdf connectionStrings

    然後可以使用解密形式新增字串,並使用下列命令將檔案加密,然後重新命名 Microsoft.Data.SqlRemoteBlobs.Maintainer.exe.config:

    aspnet_regiis -pef connectionStrings 。 -prov DataProtectionConfigurationProvider

    rename web.config Microsoft.Data.SqlRemoteBlobs.Maintainer.exe.config

  3. 建立 Windows 排程器工作,以執行每個可用資料庫的 RBS 維護程式工作。 如果您以 GUI 模式執行 RBS 安裝程式,則會自動建立 Windows 排程器工作。 不過,如果您以命令列模式執行 RBS 安裝程式,則必須在每次排程工作以執行 RBS 維護程式時執行下列步驟:

  • 在 [開始] 功能表上,按一下 [系統管理工具],然後按一下 [工作排程器]

  • 在 [動作] 功能表上,按一下 [建立工作]

  • 在 [動作] 索引標籤上,按一下 [新增]

  • 在 [ 新增動作 ] 對話方塊的 [ 動作 ] 下拉式清單中,選取 [ 啟動程式]

  • 在 [ 設定] 下方的 [ 程式/腳本 ] 方塊中,流覽至 [維護程式二進位檔 <RBS 安裝目錄> ]\Maintainer\Microsoft.Data.SqlRemoteBlobs.Maintainer.exe,然後在 [新增自變數 (選擇性) ] 文本框中,新增任何選擇性自變數。 The following default values are created by the installer:

    <-ConnectionStringName RBSMaintainerConnection>、<-Operation GarbageCollection ConsistencyCheck ConsistencyCheckForStores>、<-GarbageCollectionPhases rdo>、<-ConsistencyCheckMode r>、<-TimeLimit 120>

  • 按一下 [確定]

  • 在 [觸發程序] 索引標籤上,按一下 [新增]

  • 在 [ 新增觸發程式 ] 對話框中,排程工作,然後按兩下 [ 確定]。 We recommend that you schedule the task to run during low system activity times.

  • On the General tab, under Security, make sure that the user account has the appropriate permissions to run the task. You can change permissions by clicking Change User or Group.

  • 在 [一般] 索引標籤上,按一下 [不論使用者登入與否均執行],然後再按一下 [確定]

另請參閱

概念

SharePoint Server 中的 RBS 概觀

在 SharePoint Server 伺服器陣列中使用 FILESTREAM 來安裝和設定 RBS

在 SharePoint Server 中利用 FILESTREAM 設定內容資料庫以使用 RBS

在 SharePoint Server 中將內容移入或移出 RBS

停用 SharePoint Server 內容資料庫上的 RBS