sql >> Database >  >> RDS >> Sqlserver

Mogelijk om een ​​back-up van SQL Server 2014 te herstellen op SQL Server 2012?

Je KAN NIET doe dit - u kunt geen database koppelen/loskoppelen of back-uppen/herstellen van een nieuwere versie van SQL Server naar een oudere versie - de interne bestandsstructuren zijn gewoon te verschillend om achterwaartse compatibiliteit te ondersteunen. Dit geldt nog steeds in SQL Server 2014 - u kunt niet herstel een back-up van 2014 op iets anders dan een andere box uit 2014 (of iets nieuwer ).

U kunt dit probleem omzeilen door

  • dezelfde versie van SQL Server op al uw machines gebruiken - dan kunt u eenvoudig een back-up maken van databases en deze herstellen tussen instanties

  • anders kunt u de databasescripts voor zowel de structuur (tabellen, weergave, opgeslagen procedures enz.) als voor de inhoud (de feitelijke gegevens in de tabellen) maken in SQL Server Management Studio (Tasks > Generate Scripts ) of met behulp van een tool van derden

  • of u kunt een hulpprogramma van derden gebruiken, zoals Red-Gate's SQL Vergelijk en SQL-gegevens vergelijken om te "differen" tussen uw bron en doel, updatescripts te genereren op basis van die verschillen en deze scripts vervolgens uit te voeren op het doelplatform; dit werkt in verschillende SQL Server-versies.

De compatibiliteitsmodus instelling bepaalt alleen welke T-SQL-functies voor u beschikbaar zijn - wat kan helpen voorkomen dat u per ongeluk nieuwe functies gebruikt die niet beschikbaar zijn op andere servers. Maar het doet NIET verander het interne bestandsformaat voor de .mdf bestanden - dit is NIET een oplossing voor dat specifieke probleem - er is geen oplossing voor het terugzetten van een back-up van een nieuwere versie van SQL Server op een oudere instantie.



  1. JDBC ResultSet krijg kolommen met tabelalias

  2. Hoe vervang ik NULL door 0 in de query?

  3. JOIN (SELECT ... ) ue ON 1=1?

  4. Onjuiste syntaxis bij ')'. tijdens het maken van een tabel