Move-SPSite

 

適用版本: SharePoint Foundation 2010, SharePoint Server 2010

上次修改主題的時間: 2016-05-02

將網站集合從一個內容資料庫移至另一個。

Syntax

Move-SPSite [-Identity] <SPSitePipeBind> -DestinationDatabase <SPContentDatabasePipeBind> [-AssignmentCollection <SPAssignmentCollection>] [-Confirm [<SwitchParameter>]] [-RbsProviderMapping <Hashtable>] [-WhatIf [<SwitchParameter>]]

詳細描述

Move-SPSite Cmdlet 可將指定網站集合中的資料,從目前所在的內容資料庫移至 DestinationDatabase 參數所指定的內容資料庫。網站集合會施以無法存取的鎖定,藉此避免使用者在移動網站集合時,變更其中的資料。移動完成之後,網站集合即會回復到原先的鎖定狀態。指定的目的地內容資料庫必須已經存在,且必須附加至網站集合目前之內容資料庫所附加的 SQL Server,以及附加至網站集合目前的 Web 應用程式。

執行 Move-SPSite Cmdlet 之後,請執行 IISReset 命令將變更結果更新到 IIS。

Parameters

參數 必要 類型 描述

Identity

必要

Microsoft.SharePoint.PowerShell.SPSitePipeBind

指定要移除之網站集合的身分識別,例如 https://servername/sites/sitename。

DestinationDatabase

必要

Microsoft.SharePoint.PowerShell.SPContentDatabasePipeBind

指定網站集合要移往的內容資料庫,例如 ContentDB2。

AssignmentCollection

選用

Microsoft.SharePoint.PowerShell.SPAssignmentCollection

為能適當處置物件而管理物件。使用 SPWebSPSite 等物件可能會耗用大量的記憶體,因此在 Windows PowerShell 指令碼中使用這些物件時,必須適當地管理記憶體。您可以使用 SPAssignment 物件將物件指派給變數,並在不需要時處置這些物件,以釋放記憶體。使用 SPWebSPSiteSPSiteAdministration 物件時,若未使用指派集合或 Global 參數,將會自動處置這些物件。

注意

使用 Global 參數時,所有物件會包含在全域儲存區內。若未立即使用物件,或未使用 Stop-SPAssignment 命令處置物件,將會發生記憶體不足的狀況。

Confirm

選用

System.Management.Automation.SwitchParameter

執行命令之前,會先提示您進行確認。如需詳細資訊,請輸入下列命令:get-help about_commonparameters

RbsProviderMapping

選用

System.Collections.Hashtable

注意事項Note
Microsoft SharePoint Server 2010 with Service Pack 1 (SP1) 和 Microsoft SharePoint Foundation 2010 含 Service Pack 1 (SP1) 中已新增此參數。

用以將啟用 RBS 的網站集合,從某個啟用 RBS 的內容資料庫移至另一個啟用 RBS 的內容資料庫,而不需要移動基礎 BLOB 內容。如果內容資料庫有多個相關聯的 RBS 提供者,您必須指定所有提供者。目標內容資料庫和來源內容資料庫上必須啟用相同的提供者。

WhatIf

選用

System.Management.Automation.SwitchParameter

顯示訊息描述命令效果,而非描述命令執行的效果。如需詳細資訊,請輸入下列命令:get-help about_commonparameters

輸入類型

傳回類型

Example

---------------------範例 1-----------------------

Move-SPSite https://servername/sites/sitename -DestinationDatabase ContentDb2

此範例會移動網站集合 https://servername/sites/sitename 至內容資料庫 ContentDb2。

---------------------範例 2-----------------------

Get-SPSite -ContentDatabase ContentDb1 | Move-SPSite -DestinationDatabase ContentDb2

此範例會將 ContentDb1 中的所有網站集合移動至 ContentDb2。

---------------------範例 3-----------------------

Get-SPSiteAdministration | where { $_.OwnerLoginName -eq "DOMAIN\username" } | Move-SPSite -DestinationDatabase ContentDb2

此範例會將網站集合擁有者是 DOMAIN\username 的所有網站集合移至 ContentDb2。會使用 Get-SPSiteAdministration Cmdlet 而非 Get-SPSite Cmdlet,因為您必須擁有網站集合內的權限才能存取 SPSite 物件的屬性。身為 SharePoint 伺服器陣列管理員,您可存取 SPSiteAdministration 物件的屬性。

See Also

Reference

Backup-SPSite
Get-SPSite
Restore-SPSite
Get-SPSiteAdministration