Mudar BD de SharePoint 2007 de Sql Server

Precisei de mudar as base de dados, de uma instalação de Sharepoint 2007, de um servidor para outro.

Para o fazer efectuei os seguintes passos:

  1. Backup (SQL) das base de dados
  2. Fazer o Restore dos Backups no novo Servidor de SQL, com o mesmo nome que estava no antigo Servidor.
  3. Aceder ao Central Administration > Application Management > Content Databases
  4. Apontar o nome da Content Database de cada Site
  5. Apagar a Content Database de cada Site
  6. Abrir uma janela em linha de comandos, esta janela deve correr com um utilizador com previlegios de administração, ir para a directória c:\program files\common files\Microsoft Shared\web server extensions\12\bin directory e executar o seguinte comando:
    stsadm -o addcontentdb -url http://servername:porto 
    -databasename Sharepoint_AdminContent -databaseserver databaseservername
  7. Aceder a cada um dos sites e verificar se está tudo OK

Efectuando estes passos consegue-se facilmente mudar a base de dados de um SQL para outro.

Outra tarefa que precisei de fazer vou instalar um site de SharePoint num SharePoint em outro domínio.
Efectuei os mesmos passos como se de uma mudança de SQL se tratasse, o problema foi quando tentei entrar no site, como era de esperar o meu utilizador de domínio não tinha permissões para entrar no site.

Para resolver este problema tive que aceder à base de dados do site, no SQL, e adicionar algumas linhas às seguintes tabelas:

  1. Ao tentar entrar no site com o meu utilizador o SharePoint escreveu na tabela "UserInfo" o meu utilizador, ficando ele com invalido e não administrador. Coloquei-o valido e como administrador e apontei o meu tp_id = MemberId
  2. Fiz uma query à tabela "Groups" e retirei o GroupId referente ao grupo com permissões de administração do site
  3. Entrei na tabela "GroupMembership" e fiz a associação enter o meu MemberId e o GroupId 

A seguir já consegui entrar no site.