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

È possibile ripristinare un backup di SQL Server 2014 su SQL Server 2012?

NON PUOI fallo - non puoi allegare/scollegare o eseguire il backup/ripristinare un database da una versione più recente di SQL Server fino a una versione precedente - le strutture dei file interni sono troppo diverse per supportare la compatibilità con le versioni precedenti. Questo è ancora vero in SQL Server 2014:non puoi ripristinare un backup del 2014 su qualsiasi cosa diversa da un'altra scatola del 2014 (o qualcosa di più recente ).

Puoi aggirare questo problema tramite

  • utilizzando la stessa versione di SQL Server su tutte le tue macchine, quindi puoi facilmente eseguire il backup/ripristinare i database tra le istanze

  • in caso contrario è possibile creare gli script del database sia per la struttura (tabelle, viste, stored procedure ecc.) che per i contenuti (i dati effettivi contenuti nelle tabelle) sia in SQL Server Management Studio (Tasks > Generate Scripts ) o utilizzando uno strumento di terze parti

  • oppure puoi utilizzare uno strumento di terze parti come SQL di Red-Gate Confronta e Confronto dati SQL fare "differenze" tra l'origine e la destinazione, generare script di aggiornamento da tali differenze e quindi eseguire quegli script sulla piattaforma di destinazione; questo funziona su diverse versioni di SQL Server.

La modalità di compatibilità l'impostazione controlla solo quali funzionalità T-SQL sono disponibili per te, il che può aiutare a prevenire l'utilizzo accidentale di nuove funzionalità non disponibili in altri server. Ma NON cambia il formato del file interno per il .mdf file - questo è NON una soluzione per quel particolare problema:non esiste una soluzione per ripristinare un backup da una versione più recente di SQL Server su un'istanza precedente.