Come spostare file di DATABASE in SQL Server

Come spostare file di DATABASE in SQL Server

Nel post di oggi vedremo Come spostare file di DATABASE in SQL Server utilizzando SQL Server Management Studio. N.B. questa guida non è adatta per spostare i file dei DB di sistema (master, msdb, model, ecc..).


Come spostare file di DATABASE in SQL Server

Fase preliminare

Per spostare i file di DATBASE non c’è bisogno di fermare il servizio di SQL Server, è comunque necessario che il DB, di cui si vuole spostare i file logici, non sia in uso (OFFLINE).
I passaggi da eseguire sono i seguenti:

  1. Recuperare i nomi logici attuali dei file di DB
  2. Impostare il database in modalità OFFLINE
  3. Spostare fisicamente i file del DB nella nuova destinazione
  4. Cambiare i percorsi del file con un ALTER DATABASE
  5. Impostare nuovamente il DB ONLINE

Di seguito vediamo passo passo i passaggi da seguire.

Passaggi

Nell’esempio vedremo come spostare i file del DATABASE AdventureWorks2012.
Eseguiremo tutte le istruzioni SQL tramite SSMS (SQL Server Management Studio)

1) Recuperiamo i nomi logici dei file di DB, e i percorsi attuali in cui risiedono fisicamente, tramite la query seguente:

Questo il risultato della query appena eseguita:

Come spostare file di DATABASE in SQL Server. Percorso attuale

2) Impostiamo il DB in modalità OFFLINE eseguendo, da SSMS, la seguente query:

3) Ora spostiamo fisicamente i file di DB nella cartella/percorso in cui vogliamo posizionarli.
Nel mio caso ho spostato il file di dati (AdventureWorks2012.mdf) nel percorso F:\DATABASE\DATA\ e il file di log (AdventureWorks2012_log.ldf) nel percorso F:\DATABASE\TLOG\

4) Cambiamo i riferimenti ai file del DB utilizzando le seguenti istruzioni SQL da SSMS, per tutti i file di DB che abbiamo spostato, impostando:

NAME = ‘Nome DATABASE’
FILENAME = ‘NuovoPercorso\NomeFileLogico’

5) Riportiamo il DB in modalità ONLINE, per renderlo nuovamente utilizzabile, utilizzando l’istruzione SQL


Per verificare se le modifiche sono andate a buon fine e se il DB è nuovamente ONLINE lanciamo nuovamente la query

Questo il risultato

Esito modifiche path

Maggiori informazioni sullo spostamento dei file di DATABASE di SQL Server le trovate sul sito uffiiale della Microsoft a questo link.

A presto 😉

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *