Spostare tutti i database in SharePoint Server

SI APPLICA A:yes-img-132013 yes-img-162016 yes-img-192019 yes-img-seSubscription Edition no-img-sopSharePoint in Microsoft 365

È possibile gli strumenti di il sito Web Amministrazione centrale SharePoint o SQL Server per spostare tutti i database associati a SharePoint Server in un nuovo server di database.

Prima di iniziare

Le procedure descritte in questo articolo spiegano come spostare i tipi seguenti di database ospitati in un singolo server di database:

  • Database di configurazione

  • Database del contenuto di Amministrazione centrale

  • Database del contenuto

  • Database delle applicazioni di servizio

Importante

[!IMPORTANTE] Per spostare i file di database all'interno della stessa istanza di SQL Server, è consigliabile utilizzare la clausola FILENAME dell'istruzione ALTER DATABASE. Per ulteriori informazioni, vedere Spostare database utente.

Nota

[!NOTA] Per spostare un database in un'altra istanza di SQL Server o in un altro server, è consigliabile seguire le procedure disponibili in Collegamento e scollegamento di un database (SQL Server) o Backup e ripristino di database SQL Server.

Vengono riportate di seguito le autorizzazioni minime necessarie per eseguire questo processo:

  • È necessario essere membri del gruppo di SharePoint Amministratori farm.

  • Nel computer in cui è in esecuzione il sito Web Amministrazione centrale SharePoint è necessario essere membri del gruppo Administrators.

  • Nel server di database da cui vengono spostati i database è necessario essere membri dei gruppi e ruoli seguenti:

    • Gruppo Administrators

    • Ruolo predefinito del database db_backupoperator

  • Nel server di database in cui vengono spostati i database è necessario essere membri dei gruppi e ruoli seguenti:

    • Gruppo Administrators

    • Ruolo predefinito del database db_owner

In alcuni ambienti è necessario coordinare le procedure di spostamento con l'amministratore di database. Assicurarsi di seguire i criteri e le linee guida pertinenti per la gestione dei database.

Importante

[!IMPORTANTE] Durante lo spostamento dei database, tutti i siti e le risorse della farm non sono disponibili per gli utenti finché non viene completato il processo. Completare l’operazione al di fuori del normale orario di lavoro.

Spostare tutti i database

Il processo di spostamento di tutti i database da un server di database a un altro richiede l'utilizzo sia di SharePoint Server che di SQL Server.

Prima di iniziare, rivedere i passaggi del processo:

  1. Preparare il nuovo server di database.

  2. Chiudere tutte le finestre di SharePoint Management Shell aperte.

  3. Arrestare tutti i servizi correlati a SharePoint Server e Internet Information Services (IIS).

  4. Scollegare i database dall'istanza corrente di SQL Server.

  5. Copiare o spostare tutti i file associati ai database (con estensione mdf, ndf e ldf) nel nuovo server di destinazione che esegue SQL Server.

  6. Verificare che i ruoli predefiniti del server, i ruoli predefiniti del database, le autorizzazioni per i database e gli account di accesso di SQL Server siano configurati correttamente nel nuovo server di database di destinazione.

    Nota

    [!NOTA] È importante che il server di destinazione in cui si spostano i database abbia le stesse informazioni di database di cui dispone l'istanza di SQL Server corrente. Per informazioni dettagliate in merito, vedere Trasferimento di accessi e password tra istanze di SQL Server. Per ulteriori informazioni, vedere Ruoli a livello di server e Ruoli a livello di database.

  7. Collegare i database al nuovo server di destinazione che esegue SQL Server.

  8. Usare alias di connessione di SQL Server per puntare al nuovo server di database e aggiornare tutti i server Web.

    Se non si desidera utilizzare alias di connessione di SQL Server utilizzare una delle seguenti procedure per aggiornare le connessioni di database per la farm di SharePoint Server.

  • Scenario 1: usare questa procedura per aggiornare le connessioni al database se si usano SharePoint Server e i gruppi di disponibilità Always On di SQL Server per la disponibilità elevata o il ripristino di emergenza.

  • Scenario 2: Attenersi a questa procedura se è necessario eseguire operazioni manuali oppure se si spostano i database da un'installazione con il ruolo di farm a server singolo di SharePoint Server a una nuova installazione con il ruolo di farm a server singolo.

  1. Riavviare tutti i servizi arrestati al passaggio 3.

Per preparare il nuovo server di database

Configurare il nuovo server di database utilizzando le procedure illustrate in Configurare la sicurezza di SQL Server per SharePoint Server.

Il nuovo server di database deve eseguire la stessa versione di Windows Server e SQL Server del server di database esistente oppure una delle versioni seguenti:

Per SharePoint Server 2019:

  • Windows Server 2019

  • Windows Server 2016

  • SQL Server 2016

  • SQL Server 2017

Per SharePoint Server 2016:

  • Windows Server 2012 R2

  • Windows Server 2016

  • SQL Server 2014 Service Pack 1 (SP1)

  • SQL Server 2016

Per SharePoint 2013:

  • Windows Server 2008 R2

  • Windows Server 2008 R2 Service Pack 1 (SP1)

  • Windows Server 2012

  • SQL Server 2008

  • SQL Server 2012

  • SQL Server 2014

La versione dei server SharePoint Server e Windows Server esistenti deve supportare anche la versione del nuovo server SQL Server in cui vengono spostati i database. Per ulteriori informazioni, vedere Requisiti hardware e software per SharePoint Server 2016 e Requisiti hardware e software per SharePoint 2013.

Per chiudere tutte le sessioni aperte di SharePoint Management Shell

  1. Chiudere tutte le finestre di SharePoint Management Shell e tutte le finestre del prompt dei comandi aperte.

Per arrestare la farm

  1. In tutti i server SharePoint nella farm arrestare i servizi seguenti:
  • SharePoint Administration

  • Servizio Timer di SharePoint

  • Servizio di traccia di SharePoint

  • SharePoint User Code Host

  • SharePoint VSS Writer

  • Servizio Pubblicazione sul Web

  • SharePoint Server Search 16

  1. In tutti i server SharePoint nella farm, al prompt dei comandi digitare iisreset /stop.

Per scollegare i database

  1. In SQL Server Management Studio nel server di database originale scollegare i database da spostare dall'istanza a cui sono collegati. Se si eseguono molti database, può essere utile eseguire uno script Transact-SQL per scollegarli.

    Non è possibile scollegare un database se si verifica una delle condizioni seguenti:

Per spostare i file di database nel nuovo server

  1. Verificare che l'account utente che esegue questa procedura sia membro di quanto segue:

    Nel server di database da cui vengono spostati i database è necessario essere membri dei gruppi e ruoli seguenti:

  • Gruppo Administrators

  • Ruolo predefinito del database db_backupoperator

    Nel server di database in cui vengono spostati i database è necessario essere membri dei gruppi e ruoli seguenti:

  • Gruppo Administrators

  • Ruolo predefinito del database db_owner

  1. Utilizzando Esplora risorse individuare i file mdf, ldf e ndf associati a ogni database che si desidera spostare.

  2. Copiare o spostare i file nella directory di destinazione nel nuovo computer che esegue SQL Server.

Per configurare le autorizzazioni nel nuovo server

  1. Verificare che l'account utente che esegue questa procedura sia membro di quanto segue:
  • Gruppo Administrators

  • Ruolo predefinito del database db_owner

  1. Nel server di database di destinazione avviare Management Studio e trasferire le credenziali di accesso e le autorizzazioni dall'istanza originale all'istanza di destinazione. È consigliabile trasferire le autorizzazioni eseguendo uno script. È disponibile uno script di esempio in Trasferimento di accessi e password tra istanze di SQL Server.

    Per ulteriori informazioni su come trasferire metadati di SQL Server tra istanze, vedere Gestione dei metadati quando si rende disponibile un database in un'altra istanza del server.

Per collegare i database alla nuova istanza di SQL Server

  1. Verificare che l'account utente che esegue questa procedura sia membro di quanto segue:
  • Gruppo Administrators

  • Ruolo predefinito del database db_owner

  1. Nel server di database di destinazione collegare i database alla nuova istanza. Per ulteriori informazioni, vedere Collegamento di un database e sp_attach_db (Transact-SQL).

Le procedure descritte di seguito consentono di connettersi alla nuova istanza di SQL Server o di aggiornare le connessioni di database. Utilizzare la procedura più appropriata per l'ambiente farm di SharePoint Server.

Importante

Se si usano i gruppi di disponibilità Always On di SharePoint Server e SQL Server prima di spostare i database, è consigliabile puntare a Listner del gruppo di disponibilità. Se si passa da una farm a server singolo a un gruppo di disponibilità AlwayOn, è necessario usare il cliconfg.exe.

Per far puntare l'applicazione Web al nuovo server di database configurando gli alias di connessione del SQL Server.

  1. Questa procedura deve essere eseguita in tutti i server della farm di SharePoint Server che si connettono all'istanza di SQL Server che ospita i database.

  2. Verificare che l'account utente che esegue questa procedura sia membro di quanto segue:

  • Gruppo Administrators

  • Ruolo predefinito del database db_owner

  1. Avviare l'utilità di rete client di SQL Server (cliconfg.exe). Questa utilità si trova in genere nella cartella C:\Windows\SysWOW64 e C:\Windows\System32.

  2. Nella scheda Generale verificare che sia abilitato TCP/IP.

  3. Nella scheda Alias fare clic su Aggiungi. Viene visualizzata la finestra Aggiungi configurazione libreria di rete.

  4. Nella casella Alias server immettere il nome dell'istanza corrente del SQL Server.

  5. Nell'area Librerie di rete fare clic su TCP/IP.

  6. Nella casella Nome server dell'area Parametri di connessione immettere il nome e l'istanza del nuovo server da associare all'alias e quindi fare clic su OK. Si tratta del nome del nuovo server che ospita i database di SharePoint Server.

  7. Ripetere i passaggi da 3 a 8 in tutti i server della farm che si connettono alla nuova istanza del SQL Server.

  8. Facoltativo. Se l'ambiente si basa su System Center 2012 - Data Protection Manager (DPM) o su un'applicazione di terze parti che utilizza il framework Servizio Copia Shadow del volume per il backup e il ripristino, sarà necessario installare i componenti di connettività di SQL Server in ogni server Web o server applicazioni eseguendo il programma di installazione di SQL Server. Per ulteriori informazioni, vedere Installare SQL Server 2014 dall'Installazione guidata (programma di installazione) e Installazione e aggiornamento di Windows Server.

È possibile utilizzare questi cmdlet Microsoft PowerShell per distribuire, gestire e rimuovere i gruppi disponibilità in SQL Server con SharePoint Server:

  • Add-DatabaseToAvailabilityGroup

  • Remove-DatabaseToAvailabilityGroup

  • Get-AvailabilityGroupStatus

Usare la procedura seguente per aggiornare le connessioni al database se si usano i gruppi di disponibilità Always On di SharePoint Server e SQL Server per la disponibilità elevata o il ripristino di emergenza.

Scenario 1: per aggiornare le connessioni di database mediante PowerShell

  1. Verificare di essere membri dei ruoli e dei gruppi seguenti:
  • Ruolo predefinito del server securityadmin nell'istanza di SQL Server.

  • Ruolo predefinito del database db_owner in tutti i database da aggiornare.

  • Gruppo Administrators per il server in cui vengono eseguiti i cmdlet diPowerShell.

    Un amministratore può utilizzare il cmdlet Add-SPShellAdmin per concedere le autorizzazioni per l'utilizzo dei cmdlet di SharePoint Server.

    Nota

    [!NOTA] Se non si dispone delle autorizzazioni, richiederle all'amministratore per l'installazione o all'amministratore di SQL Server. Per ulteriori informazioni sulle autorizzazioni di PowerShell, vedere Add-SPShellAdmin.

  1. Avviare Management Shell di SharePoint.

  2. Al prompt dei comandi di PowerShell digitare i comandi seguenti:

Add-DatabaseToAvailabilityGroup -AGName "<AGGroupName>" -DatabaseName "<DatabaseName>" [-FileShare "<\\server\share>"]

Dove:

  • <AGGroupName> è il nome del gruppo di disponibilità.

  • <DatabaseName> è il nome del database da aggiungere al gruppo di disponibilità.

  • Se viene usato il parametro facoltativo -FileShare , <\server\share> è il nome del server e la condivisione usata.

  1. Ripetere questi passaggi per tutti i database da spostare, inclusi i database di configurazione e del contenuto di Amministrazione centrale.

Attenersi a questa procedura per i seguenti scenari:

  • Se è necessario utilizzare una procedura manuale

  • Se si spostano i database da un tipo di ruolo Farm a server singolo di SharePoint Server 2016 a un nuovo tipo di ruolo Farm a server singolo o da un'installazione a server singolo di SharePoint 2013 a una nuova installazione a server singolo.

    Nota

    [!NOTA] Il ruolo della farm a server singolo sostituisce la modalità di installazione autonoma disponibile nelle versioni precedenti di SharePoint Server. Per ulteriori informazioni, vedere Panoramica dei ruoli del server MinRole in SharePoint Server 2016.

  • Se si utilizzano gruppi di disponibilità, è necessario aggiungere manualmente i database ai gruppi di disponibilità in base al rispettivo supporto della disponibilità elevata o del ripristino di emergenza. Per ulteriori informazioni, vedere Aggiungere un database a un gruppo di disponibilità (SQL Server)

  • Se si utilizza il mirroring SQL, verificare che il mirroring sia configurato correttamente. Per ulteriori informazioni, vedere Impostazione del mirroring del database (SQL Server) e Mirroring del database (SQL Server).

Scenario 2: per aggiornare le connessioni di database mediante Microsoft PowerShell

  1. Avviare SharePoint Management Shell.

  2. Al prompt dei comandi di PowerShell digitare i comandi seguenti:

$db = Get-SPDatabase -Identity <guid>

Dove <GUID> è l'ID del database che si sposta.

Nota

Usare Get-SPDatabase senza parametri per visualizzare un elenco di tutti i database con GUID.

$db.ChangeDatabaseInstance("<DBServerName>")

Dove <DBServerName> è il nome o l'alias del nuovo SQL Server o è il nome DNS del listener del gruppo di disponibilità AlwaysOn.

$db.Update()
  1. Se si utilizza il mirroring del database di SQL Server, è necessario ricordarsi di popolare la proprietà FailoverServiceInstance del database di SharePoint.
$db.failoverserviceinstance("<DBServerName>")

Dove <DBServerName> è il nome o l'alias di SQL Server con mirroring.

$db.update()
  1. Ripetere questi passaggi per tutti i database da spostare, inclusi i database di configurazione e del contenuto di Amministrazione centrale.

Per riavviare i servizi nella farm

  1. Verificare che l'account utente che esegue questa procedura sia membro del gruppo di SharePoint Amministratori farm.

  2. In tutti i server SharePoint nella farm, al prompt dei comandi digitare iisreset /start.

  3. Nello snap-in MMC Servizi avviare tutti i servizi correlati a SharePoint Server e IIS. Sono inclusi i servizi seguenti:

  • SharePoint Administration

  • Servizio Timer di SharePoint

  • Servizio di traccia di SharePoint

  • SharePoint User Code Host

  • SharePoint VSS Writer

  • Servizio Pubblicazione sul Web

  • Servizio di ricerca di SharePoint Server

Vedere anche

Concetti

Tipi di database e relative descrizioni in SharePoint Server

Ulteriori risorse

Guida di riferimento rapido: Database di SharePoint Server 2016

Database che supportano SharePoint 2013

Add a database server to an existing farm in SharePoint 2013