Sqlserver
 sql >> Database >  >> RDS >> Sqlserver

SQL Server 2016:ripristino di un database

Come per i backup di database, in SQL Server 2016 è possibile ripristinare un database utilizzando Transact-SQL, PowerShell o tramite la GUI di SQL Server Management Studio.

Qui dimostrerò come ripristinare un database utilizzando la GUI del sistema di gestione di SQL ServerSQL Server Management System, quindi utilizzando Transact-SQL.

Ripristina un database tramite la GUI

In questo esempio, ripristineremo un backup di un database nuovo di zecca chiamato WideWorldImporters .

Gli WideWorldImporters database è un database di esempio fornito dal team SQL Server di Microsoft per dimostrare come è possibile utilizzare le funzionalità di SQL Server in uno scenario reale.

Questo processo creerà un nuovo database chiamato WideWorldImporters . Il database conterrà vari oggetti (come tabelle, viste, stored procedure, ecc.). Conterrà anche dati di esempio, quindi non è necessario aggiungerne di nuovi.

Scarica il file di backup del database

Prima di iniziare, scarica il database (da GitHub).

  • Scarica WideWorldImporters-Full.bak file se stai utilizzando l'edizione Evaluation, Developer o Enterprise Edition di SQL Server.
  • Oppure scarica WideWorldImporters-Standard.bak file se stai utilizzando SQL Server Standard Edition.
  1. Avvia Ripristina database Finestra di dialogo

    In Esplora oggetti, fai clic con il pulsante destro del mouse su Database nodo e seleziona Ripristina database... dal menu contestuale.

  2. Seleziona il file di backup

    Sotto la Fonte intestazione, seleziona Dispositivo e fai clic sul pulsante con i puntini di sospensione ( ... ) per avviare Seleziona dispositivi di backup finestra di dialogo.

  3. Seleziona il file di backup

    Garantire quel File è selezionato, fai clic su Aggiungi per cercare il file .bak del database e aggiungerlo.

    Dopo aver aggiunto il file di backup ed è elencato in Supporto di backup: , fai clic su OK per uscire da questa finestra di dialogo.

  4. Controlla le impostazioni

    Vari campi in Ripristina database la finestra di dialogo verrà popolata in base al file di backup selezionato.

    Fare clic su OK per ripristinare il database.

    Puoi (facoltativamente) fare clic su Verifica supporto di backup per verificare che non ci siano problemi con il file di backup prima di eseguire il processo di ripristino.

  5. Messaggio di successo

    Riceverai un messaggio che ti informa che il database è stato ripristinato correttamente.

    Fare clic su OK per finire.

  6. Controlla il database

    Passa a WideWorldImporters database ed espandere i suoi nodi per rivedere i suoi vari oggetti come tabelle, viste, stored procedure, ecc.

    Puoi iniziare a lavorare con questo database immediatamente. Ad esempio, eseguendo SELECT * FROM Website.Suppliers; restituirà un elenco di fornitori che utilizzano il Sito web.Fornitori visualizza.

Ripristinare un database utilizzando Transact-SQL

  • È possibile eseguire lo stesso ripristino del database di cui sopra utilizzando SQL.

    Per fare ciò, apri una nuova finestra di query ed esegui un RESTORE dichiarazione.

    Il RESTORE accetta varie opzioni (proprio come l'opzione GUI), ma puoi anche eseguire un semplice ripristino con un minimo di codice.

    Codice campione

    Di seguito è riportato un esempio di un semplice script di ripristino che specifica il file di database da ripristinare e il database di destinazione.

    Specifica inoltre dove verranno posizionati i dati e i file di registro.

    Dopo aver eseguito questo codice, WideWorldImporters verrà creato il database.

    Elimina prima il database esistente eseguendo il codice seguente:

    USE master;
    DROP DATABASE WideWorldImporters;

    Puoi anche eliminare un database tramite Esplora oggetti facendo clic con il pulsante destro del mouse sul nome del database e selezionando Elimina dal menu contestuale.

    Ora controlla che il database non sia più elencato in Esplora oggetti. Potrebbe essere necessario fare clic con il pulsante destro del mouse su Database e fai clic su Aggiorna prima che scompaia.

    Dopo aver confermato che il database non esiste più sul tuo server, esegui il seguente script per ripristinarlo:

    USE master;
    RESTORE DATABASE WideWorldImporters  
    FROM DISK = N'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\Backup\WideWorldImporters-Full.bak'   
    WITH    
        MOVE N'WWI_Primary' 
            TO N'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA\WideWorldImporters.mdf',    
        MOVE N'WWI_UserData' 
            TO N'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA\WideWorldImporters_UserData.ndf',    
        MOVE N'WWI_Log' 
            TO N'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA\WideWorldImporters.ldf',    
        MOVE N'WWI_InMemory_Data_1' 
            TO N'C:\Program Files\Microsoft SQL Server\MSSQL13.MSSQLSERVER\MSSQL\DATA\WideWorldImporters_InMemory_Data_1';

    Mostra un messaggio di avanzamento

    Puoi usare le STATS opzione per ricevere un aggiornamento sullo stato di avanzamento del processo di ripristino.

    Ad esempio, STATS=10 comporterà un 10 percento elaborato , 20 percento elaborato , ecc. durante il ripristino del database.

    Puoi vedere la sintassi completa per RESTORE dichiarazione sul sito Web Microsoft.

Ora puoi utilizzare questo database per provare diverse cose. Sentiti libero di sperimentare con esso. Interroga dati, elimina dati, rilascia oggetti, qualsiasi cosa. Dopotutto, se sbagli completamente, puoi sempre ripristinare il database dal file di backup.