sql >> Databasteknik >  >> RDS >> Sqlserver

Är det möjligt att återställa en säkerhetskopia av SQL Server 2014 på SQL Server 2012?

Du KAN INTE gör detta - du kan inte bifoga/ta bort eller säkerhetskopiera/återställa en databas från en nyare version av SQL Server ner till en äldre version - de interna filstrukturerna är alldeles för olika för att stödja bakåtkompatibilitet. Detta är fortfarande sant i SQL Server 2014 - du kan inte återställa en 2014 säkerhetskopia på något annat än en annan 2014 box (eller något nyare ).

Du kan antingen komma runt problemet genom att

  • använder samma version av SQL Server på alla dina maskiner - då kan du enkelt säkerhetskopiera/återställa databaser mellan instanser

  • annars kan du skapa databasskripten för både struktur (tabeller, vy, lagrade procedurer etc.) och för innehåll (den faktiska data som finns i tabellerna) antingen i SQL Server Management Studio (Tasks > Generate Scripts ) eller med hjälp av ett tredjepartsverktyg

  • eller så kan du använda ett tredjepartsverktyg som Red-Gates SQL Jämför och SQL Data Compare att göra "diffing" mellan din källa och mål, generera uppdateringsskript från dessa skillnader och kör sedan dessa skript på målplattformen; detta fungerar över olika SQL Server-versioner.

kompatibilitetsläget inställningen styr bara vilka T-SQL-funktioner som är tillgängliga för dig - vilket kan hjälpa till att förhindra att nya funktioner som inte är tillgängliga på andra servrar av misstag. Men det gör det INTE ändra det interna filformatet för .mdf filer - det här är INTE en lösning för just det problemet - det finns ingen lösning för att återställa en säkerhetskopia från en nyare version av SQL Server på en äldre instans.



  1. SQL -- Fyll i datum som inte har resultat

  2. Hur man optimerar mysql-fråga för att få kategorier och underkategorier

  3. Data för långa för kolumn i Django på MySQL

  4. Lighty för Oracle