Move-SPSite

将网站集从一个内容数据库移到另一个内容数据库。

语法

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

说明

Move-SPSite cmdlet 将指定网站集中的数据从网站集的当前内容数据库移到 DestinationDatabase 参数指定的内容数据库。

禁止访问锁定应用于网站集,以防止用户在移动数据时更改网站集中的数据。

移动完成后,网站集将恢复到其原始锁定状态。

运行 Microsoft SharePoint Foundation Web 应用程序服务的任何服务器上都需要重置 IIS,网站移动才能生效。 SharePoint Server 2019不需要这样做。

指定的目标内容数据库必须已存在,必须与网站集的当前内容数据库附加到同一 SQL Server,并且必须附加到网站集的当前 Web 应用程序。

有关适用于 SharePoint 产品的 Windows PowerShell 的权限和最新信息,请参阅 SharePoint Server cmdlet

示例

---------------------示例 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 对象的属性。

---------------------示例 4-----------------------

Move-SPSite -Identity siteUrl -DestinationDatabase databaseName -RbsProviderMapping
       @{"sourceProvider1"="targetProvider1", "sourceProvider2"="targetProvider2"}

此示例将已启用 RBS 的网站集从一个已启用 RBS 的内容数据库移动到另一个已启用 RBS 的内容数据库,sourceProvider1 为源 RBS 提供程序,targetProvider1 为目标 RBS 提供程序。

参数

-AssignmentCollection

管理对象以便正确进行处理。 使用 SPWeb 或 SPSite 等对象可能会耗用大量内存,而且在 Windows PowerShell 脚本中使用这些对象需要正确管理内存。 通过使用 SPAssignment 对象,可以将对象分配给变量,然后在不需要这些对象时对它们进行处理,以释放内存。 在使用 SPWeb、SPSite 或 SPSiteAdministration 对象时,如果不使用分配集合或 Global 参数,则会自动处理这些对象。

在使用 Global 参数时,所有对象均包含在全局存储中。 如果未立即使用对象,或未通过使用 Stop-SPAssignment 命令来处理对象,则可能会发生内存不足的情况。

Type:SPAssignmentCollection
Position:Named
Default value:None
Required:False
Accept pipeline input:True
Accept wildcard characters:False
Applies to:SharePoint Server Subscription Edition

-Confirm

执行命令前,看到确认提示。 有关详细信息,请键入以下命令:get-help about_commonparameters

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:SharePoint Server Subscription Edition

-CopyEvents

指定是否需要将 EventCache 表的事件复制到目标内容数据库。

有效值为 True 或 False。

Type:Boolean
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:SharePoint Server Subscription Edition

-DestinationDatabase

指定网站集应移动到的内容数据库。 例如,ContentDB2。

Type:SPContentDatabasePipeBind
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False
Applies to:SharePoint Server Subscription Edition

-Identity

指定要移动的网站集的标识。 例如,https://servername/sites/sitename.

Type:SPSitePipeBind
Position:1
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False
Applies to:SharePoint Server Subscription Edition

-RbsProviderMapping

此参数已添加到具有 Service Pack 1 的 SharePoint Server (SP1) 和 SharePoint Foundation with Service Pack 1 (SP1) 。

用于在不移动基础 BLOB 内容的情况下,将已启用 RBS 的网站集从一个已启用 RBS 的内容数据库移动到另一个已启用 RBS 的内容数据库。 如果内容数据库有多个关联的 RBS 提供程序,您必须指定所有提供程序。 必须在目标内容数据库和源内容数据库上启用相同的提供程序。

Type:Hashtable
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:SharePoint Server Subscription Edition

-WhatIf

显示一条描述命令作用的消息,而不执行命令。 有关详细信息,请键入以下命令:get-help about_commonparameters

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False
Applies to:SharePoint Server Subscription Edition