Mergecontentdbs:Stsadm 作業 (Office SharePoint Server)

描述

當已指定 sourcedatabasenamedestinationdatabasename 參數時,允許將網站集合從一個內容資料庫移至另一個內容資料庫。

來源和目的資料庫必須在相同的 Microsoft SQL Server 執行個體中,而且必須連接至相同的 Web 應用程式。為達最佳效能,一次請勿移動超過 250 個網站集合。一次移動太多網站集合會大幅降低效能。

注意

mergecontentdbs 作業的第一次導入是在 Microsoft Office SharePoint Server 2007 Service Pack 1。

重要

四月份的累計更新會修正影響 Stsadm mergecontentdbs 作業的已知問題。如需此問題的詳細資訊,請參閱 STSADM MergeContentDBs 命令可能會造成 Windows SharePoint 服務 3.0 資料庫損毀 (機器翻譯)。若您打算合併或分割內容資料庫,強烈建議您安裝四月份的累計更新。

語法

stsadm -o mergecontentdbs

-url <URL 名稱>

-sourcedatabasename <來源資料庫名稱>

-destinationdatabasename <目的資料庫名稱>

[-operation] {1-3}

**      1 - Analyze (default)**

**      2 - Full database merge**

**      3 - Read from file**

[-filename] <從 stsadm -o 列舉項目產生的檔案>

參數

參數名稱

必要?

描述

url

有效的 URL,例如 http://*server_name*

想要合併的資料庫之 Web 應用程式的 URL。

sourcedatabasename

有效的資料庫名稱,例如 "WSS_Content_1

要移動網站集合的來源資料庫名稱。

destinationdatabasename

有效的資料庫名稱,例如 "WSS_Content_2"

要移動網站集合的目的資料庫名稱。

operation

下列任一值:

  • 1 - Analyze

  • 2 - Full database merge

  • 3 - Read from file

1 - Analyze:指出命令視窗會顯示目前的網站集合數目、資料庫大小、網站集合數目上限,以及在達到各內容資料庫的網站集合數目上限之前可新增的網站集合數目。

命令視窗中也會顯示有關哪些內容資料庫應用於來源,以及哪些內容資料庫應用於目的之建議 (假設資料庫中的所有網站集合都會被移動)。此建議是依據哪個內容資料庫包含較少資料,因此可以較快移動。

此為預設值。

2 - Full database merge:將整個內容資料庫從一個資料庫合併至另一個資料庫。作業完成之後,來源內容資料庫仍會在 Microsoft SQL Server 中,而且仍會連接 Web 應用程式。它只是裡面沒有網站集合。

3 - Read from file:只將網站集合子集從來源資料庫移至目的資料庫。所要移動的網站集合應列在有指定 filename 參數的檔案中。

filename

有效的檔案名稱,例如 "sites.xml"

在來源內容資料庫中指定您要移至目的資料庫的特定網站集合

此資訊是使用<Enumsites>作業的 databasename 參數來取得的。

注意

databasename 參數的第一次導入是在 Office SharePoint Server 2007 Service Pack 1。

注意

您可以使用重新導向運算子 ">" 來將 enumsites 作業的 XML 輸出擷取至文字檔。

備註

執行 Stsadm mergecontentdbs 作業之前,必須:

若要將網站集合從一個資料庫移至另一個資料庫,您必須同時是伺服器陣列管理員群組及本機系統管理員群組的成員,而且必須擁有需要移動的任何網站集合所授與的完全控制權限。若要授與此權限,請在管理中心中,依序按一下 [應用程式管理]、[應用程式安全性]**** 及 [Web 應用程式的原則]。您用來執行此程序的帳戶,必須是 SQL Server 中的 db_owner 固定資料庫角色的成員。

在成功移動網站之後,請使用 [Web 應用程式的原則] 頁面來移除或變更您的帳戶權限層級。如果您的帳戶被用於其他服務,請將其重設為原始權限層級。

若未使用正確的權限執行作業,將會收到下列錯誤訊息:「移動網站... 另一個網站已經存在於 /sites/test。在嘗試以相同 URL 建立新網站之前請先刪除此網站、選擇新的 URL 或在您原本指定的路徑建立新的包含網站。」

完成移動之後,必須在伺服器陣列中的每一部前端網頁伺服器上,執行 iisreset /noforce 命令。若移動了大量的資料,可能有必要縮小 SQL 資料庫及交易記錄檔。如需縮小 SQL 資料庫的進一步資訊,請參閱如何:壓縮資料庫 (SQL Server Management Studio) (https://go.microsoft.com/fwlink/?linkid=102959&clcid=0x404)。

範例

使用 filename 參數來合併內容資料庫

就此範例而言,WSS_Content_1 及 WSS_Content_2 是內容資料庫名稱**。**

若要使用重新導向器作業 ">",在 sites.xml 檔案中建立網站清單,請使用下列語法:

stsadm -o enumsites -url http://<servername> –databasename WSS_Content_1 > sites.xml

注意

重新導向器作業 ">" 會將輸出導向名為 sites.xml 的文字檔。然後您可以編輯 sites.xml 檔,以列出應移動的網站集合清單。

若要將 sites.xml 檔案中指定的網站集合從一個內容資料庫移至另一個內容資料庫,請使用下列語法:

stsadm -o mergecontentdbs -url http://<servername> -sourcedatabasename WSS_Content_1 -destinationdatabasename WSS_Content_2 -operation 3 -filename sites.xml

注意

operation 參數中的數字 3 對應至 "Read from file"。

移動網站集合之後,若要確定變更已在伺服器陣列中的所有前端網頁伺服器上生效,請從命令提示執行下列命令:

iisreset /noforce

另請參閱

其他資源

STSADM MergeContentDBs 命令可能會造成 Windows SharePoint 服務 3.0 資料庫損毀