martedì 1 marzo 2016

Sharepoint 2013 - Migrare i Content Database da una farm ad un'altra

Affronto qui un argomento sempre attuale (anche per l'inveterata abitudine di ogni servizio di gestione IT di cambiare e riconfigurare parco macchine e topologia della Intranet) e cioè come migrare i content databases delle site collections di una farm su una nuova farm.
Do' per scontato che sulla nuova farm sia già installato Sharepoint 2013 correttamente configurato (ATTENZIONE: le due farm DEVONO essere localizzate nella stessa lingua, basta anche installare il language pack, altrimenti si avrà un errore bloccante rintracciabile nei log durante il caricamento dei regional settings) e siano state create le giuste utenze di dominio. In generale ne bastano 2 o 3 (i nomi degli utenti sono solo indicativi e utilizzati a titolo d'esempio):
  • DOMAIN_NAME/sp_farm come amministratore della farm e utente per il servizio Timer e Administration di Sharepoint
  • DOMAIN_NAME/sp_appservice per le service applications
  • DOMAIN_NAME/sp_wbsvc per i web services
Lo spostamento consiste a grandi linee in questi passi:
  1. Sulla farm d'origine fermare i servizi Sharepoint Administration, Sharepoint Timer e Sharepoint Server Search e il servizio web server (w3svc)
  2. Sulla macchina SQL della vecchia farm va fermato il servizio MSSQLSERVER dell'istanza utilizzata per contenere i db della vecchia farm Sharepoint
  3. I database interessati dalla migrazione, vengono copiati dalla directory DATA della macchina SQL d'origine alla cartella DATA della macchina SQL di destinazione
  4. Sulla farm di destinazione va creata una Web Application  identica a quella che si vuole migrare (stessa porta e nome). Al content database associato alla web application andrebbe associato un nome univoco che non coincide con nessuno dei nomi dei database da spostare. In questo esempio lo chiameremo "WSS_Content_Fake".
  5. Sull'istanza SQL destinata alla nuova farm, collegare (attach) i database (.mdf) che erano associati sulla vecchia farm alla Web Application che abbiamo ricreato sulla nuova farm.
  6. Nel caso i files vadano rinominati ricordarsi di farlo dalla schermata utilizzata per collegare i db, scegliendo il giusto file fisico sotto e il giusto nome di file destinazione sopra
  7. N.B. Questo passo è molto importante. Va aperta la shell di amministrazione di Sharepoint ed eseguiti i seguenti comandi (il secondo per ognuno dei db collegati al passo 5 e appartenenti alla Web Application
> $webapp = Get-SPWebApplication http://mywebapplication
> Mount-SPContentDatabase -Name Nome_content_db_collegato -WebApplication $webapp
> $nocontent = Get-SPContentDatabase -Identity "WSS_Content_Fake"
> Dismount-SPContentDatabase $nocontent

IMPORTANTE: A questo punto eseguire iisreset



Adesso dovrebbe essere tutto a posro. Vanno copiati nella directory hive di Sharepoint anche i file custom della vecchia farm (css,js e immagini). Andrà poi adattata un po' la grafica.

Nel caso fosse una sitecollection con experience 2010, è consigliato un upgrade alla experience 2013 che puó essere avviato dalla pagina delle Impostazioni.



 Nel caso la grafica non venga molto bene, basta applicare un tema tra quelli forniti da sharepoint per sistemare tutto :-)











Nessun commento:

Posta un commento