Mergecontentdbs: operação de Stsadm (Windows SharePoint Services)
Atualizado em: 2009-04-28
Descrição
Permite que um conjunto de sites seja movido de um banco de dados de conteúdo para outro quando os parâmetros sourcedatabasename e destinationdatabasename são especificados.
Os bancos de dados de origem e de destino devem estar na mesma instância do Microsoft SQL Server e devem estar anexados ao mesmo aplicativo Web. Para obter o desempenho ideal, não mova mais do que 250 conjuntos de sites de uma vez. Mover mais conjuntos de sites de uma vez poderá diminuir muito o desempenho.
Dica
A operação mergecontentdbs foi apresentada pela primeira vez no Windows SharePoint Services 3.0 Service Pack 1.
Importante
A Atualização Cumulativa de Abril corrige problemas conhecidos e que afetam a operação mergecontentdbs do Stsadm. Para obter detalhes do problema, consulte o tópico sobre como o comando Mergecontentdbs do Stsadm pode corromper o banco de dados. Se você planeja mesclar ou dividir bancos de dados de conteúdo, recomendamos a instalação da Atualização Cumulativa de Abril.
Sintaxe
stsadm -o mergecontentdbs
** -url <Nome de URL>**
** -sourcedatabasename <nome do banco de dados de origem>**
** -destinationdatabasename <nome do banco de dados de destino>**
** [-operation] {1-3}**
** 1 - Analisar (padrão)**
2 - Mesclagem completa de banco de dados
3 - Ler no arquivo
** [-filename] <arquivo gerado a partir de stsadm -o enumsites>**
Parâmetros
Nome do parâmetro |
Valor |
Obrigatório? |
Descrição |
url |
Uma URL válida, como "http://nome_do_servidor" |
Sim |
URL do aplicativo Web cujos bancos de dados você deseja mesclar. |
sourcedatabasename |
Um nome de banco de dados válido, como "WSS_Content_1" |
Sim |
O nome do banco de dados a partir do qual os conjuntos de sites serão movidos. |
destinationdatabasename |
Um nome de banco de dados válido, como "WSS_Content_2" |
Sim |
O nome do banco de dados para o qual os conjuntos de sites serão movidos. |
operação |
Um dos seguintes valores:
|
Não |
1 - Analisar: indica que a janela do comando exibe o número atual de conjuntos de sites, o tamanho do banco de dados, o número máximo de conjuntos de sites e o número de conjuntos de sites que poderão ser adicionados antes que seja atingido o número máximo de conjuntos de sites para cada banco de dados de conteúdo. Além disso, uma recomendação sobre qual banco de dados de conteúdo que deverá ser usado para a origem e qual banco de dados de conteúdo que deverá ser usado para o destino — supondo que todos os conjuntos de sites do banco de dados serão movidos — será exibida na janela de comando. Essa recomendação está baseada no banco de dados de conteúdo com menos dados e, consequentemente, mais rápido de mover. Este é o padrão. 2 - Mesclagem completa de banco de dados: mescla todo o banco de dados de conteúdo de um banco de dados para outro. Após a conclusão da operação, o banco de dados de conteúdo de origem ainda existirá no Microsoft SQL Server e ainda estará anexado ao aplicativo Web. Ele simplesmente não terá conjuntos de sites. 3 - Ler no arquivo: move somente um subconjunto de conjuntos de sites do banco de dados de origem para o banco de dados de destino. Os conjuntos de sites a serem movidos deverão ser listados em um arquivo especificado com o parâmetro filename. |
nome_de_arquivo |
Um nome de arquivo válido, como "sites.xml" |
Não |
Especifica um determinado conjunto de sites no banco de dados de conteúdo de origem que você deseja mover para o banco de dados de destino Estas informações são obtidas por meio do parâmetro databasename da operação Enumsites. ![]()
O parâmetro databasename foi apresentado pela primeira vez no Windows SharePoint Services 3.0 com o Service Pack 1.
![]()
Você pode usar o operador de redirecionamento ">" para capturar a saída em XML da operação enumsites em um arquivo de texto.
|
Comentários
Antes de executar a operação mergecontentdbs do Stsadm, é preciso:
- Ter espaço livre disponível, na proporção de três vezes o tamanho do conjunto de sites de origem. Use a Enumsites: operação do Stsadm (Windows SharePoint Services) para determinar o tamanho do conjunto de sites.
Para mover um conjunto de sites de um banco de dados para outro, você terá de ser membro do grupo Administradores de Farm e do grupo Administradores Locais e deverá ter a permissão Controle Total para qualquer conjunto de sites que precise ser movido. Para conceder essa permissão, em Administração Central, clique em Gerenciamento de Aplicativos, depois em Segurança de Aplicativo e, em seguida, em Política do Aplicativo Web. A conta usada para a execução desse procedimento deve ser membro da função fixa de banco de dados db_owner no SQL Server.
Após a mudança bem-sucedida do site, remova ou altere seu nível de permissão de conta, usando a página Política de aplicativo Web. Se a sua conta for usada por outros serviços, redefina-a para o nível de permissão original.
Se não tiver as permissões corretas para executar a operação, você receberá esta mensagem de erro: “Movendo sites... Já existe outro site em /sites/teste. Exclua esse site antes de tentar criar um novo com a mesma URL, escolha uma nova URL ou crie uma nova inclusão no caminho originalmente especificado".
Depois de concluída a movimentação, execute o comando iisreset /noforce em cada servidor Web front-end do farm. Se uma grande quantidade de dados tiver sido movida, talvez seja melhor reduzir os bancos de dados e os logs de transação SQL. Para obter mais informações sobre como reduzir os bancos de dados SQL, consulte o tópico sobre como reduzir um banco de dados (SQL Server Management Studio) (https://go.microsoft.com/fwlink/?linkid=102959\&clcid=0x416).
Exemplos
Mesclar bancos de dados de conteúdo usando o parâmetro filename
Para este exemplo, WSS_Content_1 e WSS_Content_2 são os nomes dos bancos de dados de conteúdo**.**
Para criar uma lista de sites no arquivo sites.xml usando a operação redirecionadora ">", use a seguinte sintaxe:
stsadm -o enumsites -url http://<nomedoservidor> –databasename WSS_Content_1 > sites.xml
Dica
O operador redirecionador ">" redireciona a saída para um arquivo de texto chamado sites.xml. Você poderá então editar o arquivo sites.xml para listar os conjuntos de sites que devem ser movidos.
Para mover os conjuntos de sites especificados no arquivo sites.xml de um banco de dados de conteúdo para outro, use a seguinte sintaxe:
stsadm -o mergecontentdbs -url http://<nome_do_servidor> -sourcedatabasename WSS_Content_1 -destinationdatabasename WSS_Content_2 -operation 3 -filename sites.xml
Dica
O número 3 do parâmetro operation corresponde a "Ler no arquivo".
Depois que o conjunto de sites for movido, e para garantir que as alterações entrem em vigor em todos os servidores Web front-end do farm, execute o comando a seguir a partir de um prompt de comando:
iisreset /noforce