Mover conjuntos de sites entre bancos de dados no SharePoint Server
APLICA-SE A:2013 2016 2019 Subscription Edition SharePoint no Microsoft 365
Sob algumas circunstâncias, talvez seja necessário mover um ou mais conjuntos de sites para um banco de dados de conteúdo diferente. Por exemplo, um conjunto de sites pode aumentar mais do que banco de dados de conteúdo em que reside, exigindo que você mude o conjunto de sites para um banco de dados de conteúdo maior. No SharePoint Server, esse procedimento equivale a mover o conjunto de sites para um banco de dados maior.
No entanto, se os conjuntos de sites não aumentarem até sua capacidade esperada, pode ser conveniente combinar vários conjuntos de sites em um banco de dados de conteúdo. No SharePoint Server, esse processo não mescla bancos de dados de conteúdo, mas sim os conjuntos de sites são movidos e são inseridos em um novo banco de dados.
Você pode mover conjuntos de sites entre bancos de dados em um farm do SharePoint Server usando o Microsoft PowerShell. Você também pode mover conjuntos de sites usando os procedimentos de Backup e Restauração. Para obter informações sobre como fazer isso, consulte Fazer backup de conjuntos de sites no SharePoint Server e Restaurar conjuntos de sites no SharePoint Server.
Antes de começar
Antes de começar essa operação, as condições a seguir devem ser cumpridas:
O banco de dados de conteúdo de destino já deve existir.
Os bancos de dados de conteúdo de origem e destino devem estar localizados na mesma instância do SQL Server.
Os bancos de dados de conteúdo de origem e de destino devem estar anexados ao mesmo aplicativo da web. Para obter mais informações sobre como adicionar um banco de dados de conteúdo a um aplicativo da web, consulte Adicionar bancos de dados de conteúdo ao SharePoint Server.
Determinando o tamanho do conjunto de sites de origem
Quando você move conjuntos de sites para outro banco de dados de conteúdo, os dados de auditoria são copiados. O tamanho dos dados varia conforme as configurações da coleção de eventos para o conjunto de sites. Se os dados de auditoria forem grandes, mova-os para outro banco de dados antes de mover o conjunto de sites. Para fazer isso, use o procedimento Para arquivar e recortar os dados de auditoria usando o Microsoft PowerShell.
Independentemente do motivo da mudança de um conjunto de sites, sempre inicie a tarefa determinando o tamanho do conjunto de sites a ser movido. Dessa forma, você pode ter certeza de que o disco rígido de destino tem espaço suficiente para armazenar o conteúdo do conjunto de sites. Verifique se o disco rígido de destino tem pelo menos três vezes o espaço necessário para o conjunto de sites.
Dica
Mantenha-se atualizado sobre o espaço utilizado pelos conjuntos de sites criando cotas de sites e alertas por email.
Para determinar o tamanho do conjunto de sites usando o PowerShell
- Verifique se você possui as seguintes associações:
A função de servidor fixa securityadmin na instância do SQL Server.
A função de banco de dados fixa db_owner em todos os bancos de dados que devem ser atualizados.
O grupo de administradores no servidor no qual você está executando os cmdlets do PowerShell.
Um administrador pode usar o cmdlet Add-SPShellAdmin para conceder permissões para usar cmdlets SharePoint Server.
Observação
[!OBSERVAçãO] Se você não possui permissões, entre em contato com o Administrador da instalação ou com o administrador do SQL Server para solicitar permissões. Para mais informações sobre as permissões do PowerShell, consulte Add-SPShellAdmin.
Inicie o Shell de Gerenciamento do SharePoint.
No prompt de comando do PowerShell, digite os seguintes comandos:
$used = (Get-SPSiteAdministration -Identity <http://ServerName/Sites/SiteName>).DiskUsed
$used
Onde:
- <http://ServerName/Sites/SiteName> é o nome do conjunto de sites.
A quantidade de espaço em disco que está a ser utilizada pela coleção de sites especificada é armazenada na variável $used e é apresentada na linha de comandos quando o segundo comando é executado.
Observação
A quantidade de espaço em disco exibida não inclui o espaço usado pelos dados de auditoria que serão movidos com o conjunto de sites.
Para saber mais, confira Get-SPSiteAdministration.
Para arquivar e recortar os dados de auditoria usando o PowerShell
- Verifique se você possui as seguintes associações:
A função de servidor fixa securityadmin na instância do SQL Server.
A função de banco de dados fixa db_owner em todos os bancos de dados que devem ser atualizados.
O grupo de administradores no servidor no qual você está executando os cmdlets do PowerShell.
Um administrador pode usar o cmdlet Add-SPShellAdmin para conceder permissões para usar cmdlets SharePoint Server.
Observação
[!OBSERVAçãO] Se você não possui permissões, entre em contato com o Administrador da instalação ou com o administrador do SQL Server para solicitar permissões. Para mais informações sobre as permissões do PowerShell, consulte Add-SPShellAdmin.
Inicie o Shell de Gerenciamento do SharePoint.
No prompt de comando do PowerShell, digite o seguinte comando:
(Get-SPSite -Identity <http://ServerName/Sites/SiteName>).Audit.TrimAuditLog(deleteEndDate)
Onde:
- <http://ServerName/Sites/SiteName> é o nome do conjunto de sites.
Para excluir os dados da auditoria sem arquivá-los primeiro, digite o comando a seguir:
(Get-SPSite -Identity <http://ServerName/Sites/SiteName>).Audit.DeleteEntries(deleteEndDate)
Para saber mais, veja Get-SPSite.
Observação
Recomendamos que você use o Windows PowerShell ao executar tarefas administrativas de linha de comando. A ferramenta de linha de comando Stsadm está obsoleta, mas está incluída para oferecer suporte à compatibilidade com versões anteriores do produto.
Movendo conjuntos de sites entre bancos de dados de conteúdo
É possível usar o comando Move-SPSite do PowerShell para mover conjuntos de sites entre bancos de dados de conteúdo. Dois procedimentos são fornecidos aqui. O primeiro procedimento move um único conjunto de sites para um novo banco de dados de conteúdo e o segundo procedimento move vários conjuntos de sites para um novo banco de dados de conteúdo.
Para mover um único conjunto de sites
- Verifique se você possui as seguintes associações:
A função de servidor fixa securityadmin na instância do SQL Server.
A função de banco de dados fixa db_owner em todos os bancos de dados que devem ser atualizados.
O grupo de administradores no servidor no qual você está executando os cmdlets do PowerShell.
Um administrador pode usar o cmdlet Add-SPShellAdmin para conceder permissões para usar cmdlets SharePoint Server.
Observação
[!OBSERVAçãO] Se você não possui permissões, entre em contato com o Administrador da instalação ou com o administrador do SQL Server para solicitar permissões. Para mais informações sobre as permissões do PowerShell, consulte Add-SPShellAdmin.
Inicie o Shell de Gerenciamento do SharePoint.
No prompt de comando do PowerShell, digite o seguinte comando:
Move-SPSite <http://ServerName/Sites/SiteName> -DestinationDatabase <DestinationContentDb>
Onde:
<http://ServerName/Sites/SiteName> é o nome do conjunto de sites.
<DestinationContentDb> é o nome do banco de dados de conteúdo de destino.
Para mover vários conjuntos de sites
- Verifique se você possui as seguintes associações:
A função de servidor fixa securityadmin na instância do SQL Server.
A função de banco de dados fixa db_owner em todos os bancos de dados que devem ser atualizados.
O grupo de administradores no servidor no qual você está executando os cmdlets do PowerShell.
Um administrador pode usar o cmdlet Add-SPShellAdmin para conceder permissões para usar cmdlets SharePoint Server.
Observação
[!OBSERVAçãO] Se você não possui permissões, entre em contato com o Administrador da instalação ou com o administrador do SQL Server para solicitar permissões. Para mais informações sobre as permissões do PowerShell, consulte Add-SPShellAdmin.
Inicie o Shell de Gerenciamento do SharePoint.
No prompt de comando do PowerShell, digite o seguinte comando:
Get-SPSite -ContentDatabase <SourceContentDb> | Move-SPSite -DestinationDatabase <DestinationContentDb>
Em que:
<SourceContentDb> é o nome do banco de dados de conteúdo original.
<DestinationContentDb> é o nome do banco de dados de conteúdo de destino.
Esse comando move todos os conjuntos de sites do banco de dados de conteúdo de origem para o banco de dados de conteúdo de destino.
Para saber mais, veja Move-SPSite.
Observação
Recomendamos que você use o Windows PowerShell ao executar tarefas administrativas de linha de comando. A ferramenta de linha de comando Stsadm está obsoleta, mas está incluída para oferecer suporte à compatibilidade com versões anteriores do produto.