Benutzer mit den meisten Antworten
SQL2017E und SQL2016 - keine Datenbank-Kompatibilität?

Frage
-
Hallo zusammen,
seit einigen Jahren betreibe ich zwei Computer mit je unterschiedlicher Version von SQL-Server. Ich habe dann immer auf dem zweiten eine Datenbank derart aktualisiert, indem ich auf dem ersten Computer .bak erstellt habe und dann auf dem zweiten das Wiederherstellen gemacht habe. Funktionierte immer bestens.Jetzt habe ich auf dem ersten Computer SQL2017E installiert während auf dem zweiten SQL2016 läuft.
Allerdings funktioniert mein obiges Verfahren nicht mehr. Ich habe im SSMS 2017 die Kompatibilität der datenbank auf 2016 eingestellt - trotzdem Fehler:Fehler bei der Wiederherstellung von Datenbank "MyData". (Microsoft.SqlServer.Management.RelationalEngineTasks)
------------------------------
ZUSÄTZLICHE INFORMATIONEN:
System.Data.SqlClient.SqlError: The database was backed up on a server running version 14.00.1000. That version is incompatible with this server, which is running version 12.00.2269. Either restore the database on a server that supports the backup, or use a backup that is compatible with this server. (Microsoft.SqlServer.SmoExtended)
Im Folgenden mal die Kennungen zu den SSMS:
Microsoft SQL Server Management Studio 14.0.17199.0
Microsoft Analysis Services-Clienttools 14.0.1008.227
Microsoft Data Access Components (MDAC) 10.0.15063.0
Microsoft MSXML 3.0 4.0 5.0 6.0
Microsoft Internet Explorer 9.11.15063.0
Microsoft .NET Framework 4.0.30319.42000
Betriebssystem 6.3.15063
Microsoft SQL Server Management Studio 13.0.16000.28
Microsoft Analysis Services-Clienttools 13.0.1700.441
Microsoft Data Access Components (MDAC) 10.0.15063.0
Microsoft MSXML 3.0 5.0 6.0
Microsoft Internet Explorer 9.11.15063.0
Microsoft .NET Framework 4.0.30319.42000
Betriebssystem 6.3.15063Was kann man tun? Woran liegt's?
Grüße-
Dietrich
Antworten
-
Hallo
also die Version von SSMS spielt eigentlich keine Rolle. Mich wundert nur, warum Du nicht ein und die selbe verwendest.
Und Nein: ein Restore auf einer ÄLTEREN Version von SQL Server ging noch nie. Kompatibilitätsmodus hat damit Nichts zu tun. Die Datenbankversion ist etwas internes.
Da must Du in der Vergangenheit immer ein Restore "nach oben" gemacht haben. Das geht auch weiterhin.
Also Backup auf SQL 2016, Restore auf SQL 2017, nicht andersrum.
Andreas Wolter (Blog | Twitter)
MCSM: Microsoft Certified Solutions Master Data Platform/SQL Server 2012
MCM SQL Server 2008
MVP Data Platform MCSE Data Platform
MCSM Charter Member, MCITP Charter Member etc.
www.SarpedonQualityLab.com (Founder)- Als Antwort vorgeschlagen Christoph Muthmann Freitag, 3. November 2017 11:03
- Als Antwort markiert Dimitar DenkovMicrosoft contingent staff, Administrator Donnerstag, 16. November 2017 13:58
-
Ich meine, dass SQL2017E(xpress) auf dem Tablet nicht zu installieren geht. Entschuldige die Kurzform... ;-)
Mittlerweile habe ich das Aktualisieren der datenbnk mittels Ex-/Import realisiert.
Danke für die Links, werde ich lesen.
Grüße-
Dietrich
- Als Antwort markiert Dimitar DenkovMicrosoft contingent staff, Administrator Donnerstag, 16. November 2017 14:06
Alle Antworten
-
Hallo
also die Version von SSMS spielt eigentlich keine Rolle. Mich wundert nur, warum Du nicht ein und die selbe verwendest.
Und Nein: ein Restore auf einer ÄLTEREN Version von SQL Server ging noch nie. Kompatibilitätsmodus hat damit Nichts zu tun. Die Datenbankversion ist etwas internes.
Da must Du in der Vergangenheit immer ein Restore "nach oben" gemacht haben. Das geht auch weiterhin.
Also Backup auf SQL 2016, Restore auf SQL 2017, nicht andersrum.
Andreas Wolter (Blog | Twitter)
MCSM: Microsoft Certified Solutions Master Data Platform/SQL Server 2012
MCM SQL Server 2008
MVP Data Platform MCSE Data Platform
MCSM Charter Member, MCITP Charter Member etc.
www.SarpedonQualityLab.com (Founder)- Als Antwort vorgeschlagen Christoph Muthmann Freitag, 3. November 2017 11:03
- Als Antwort markiert Dimitar DenkovMicrosoft contingent staff, Administrator Donnerstag, 16. November 2017 13:58
-
So wie es aussieht, gibt es im Management Studio noch die Funktionen Export und Import.
Dies hat nichts mit Backup zu tun, sondern es werden alle nötigen DDL-Scripte sowie Scripte für das Exportieren und Importieren der Daten selber generiert.
Dies ist zwar nicht so schnell wie ein Backup, aber umgeht die Kompatibilitätsprobleme (solange man keine neueren Features verwendet hat). -
Danke, Andreas, für die schnelle Antwort!
Die 2016er Version ist auf einem Tablet installiert, auf 2017 entwickle und ändere ich die Datenbank. Da geht NICHT 2017 E...
Allerdings: Wenn man im SSMS die Kompatibilität einstellen kann, und zwar "nach unten", warum kann die DB nicht auf dem "unteren" System erkannt und verarbeitet?
Grüße-
Dietrich
-
Danke, Andreas, für die schnelle Antwort!
Die 2016er Version ist auf einem Tablet installiert, auf 2017 entwickle und ändere ich die Datenbank. Da geht NICHT 2017 E...
Allerdings: Wenn man im SSMS die Kompatibilität einstellen kann, und zwar "nach unten", warum kann die DB nicht auf dem "unteren" System erkannt und verarbeitet?
Grüße-
Dietrich
Den Satz "Da geht NICHT 2017 E..." verstehe ich nicht. Kannst Du ihn vervollständigen? Schon oben hat mich das "E" auch gewundert. Wofür steht das? Express? Enterprise? Wäre letztlich aber auch egal für die Problematik.
Der Kompatibilitätsmodus wirkt sich nunmal nur auf Datenbankinternes aus. Auf Code-Kompatibilität und je nach Version auch den QueryOptimizer.
Mehr zu dem Thema hier in BOL: ALTER DATABASE-Kompatibilitätsgrad
und hier auch speziell zu 2016/2017: Ändern des Datenbank-Kompatibilitätsmodus und Verwenden des Abfragespeichers
Zitat:
-
Da das Upgraden einen unidirektionalen Vorgang darstellt (ein Downgrade des Dateiformats (Anmerkung: und das ist der Schlüssel zu Deiner Frage) ist nicht möglich), ist es sinnvoll, das Aktivieren neuer Funktionen als separaten Datenbankvorgang durchzuführen. Es ist möglich, eine Einstellung auf einen früheren DATABASE_COMPATIBILITY-Grad zurückzusetzen. Das neue Modell reduziert die Anzahl von Vorgängen, die während einer Ausfallzeit durchgeführt werden müssen.
-
Änderungen am Abfrageprozessor können komplexe Auswirkungen haben. Obwohl eine „positive“ Systemänderung, die für die meisten Kunden möglicherweise sehr gut ist, könnte an anderer Stelle für eine wichtige Abfrage eine unzulässige Regression verursachen. Durch die Trennung dieser Logik vom Upgradevorgang können Funktionen, wie z.B. der Abfragespeicher, Planauswahlregressionen auf Produktionsservern schnell abschwächen oder sogar komplett vermeiden.
Andreas Wolter (Blog | Twitter)
MCSM: Microsoft Certified Solutions Master Data Platform/SQL Server 2012
MCM SQL Server 2008
MVP Data Platform MCSE Data Platform
MCSM Charter Member, MCITP Charter Member etc.
www.SarpedonQualityLab.com (Founder)- Bearbeitet Andreas.WolterMicrosoft employee Freitag, 3. November 2017 09:56
-
-
Ich meine, dass SQL2017E(xpress) auf dem Tablet nicht zu installieren geht. Entschuldige die Kurzform... ;-)
Mittlerweile habe ich das Aktualisieren der datenbnk mittels Ex-/Import realisiert.
Danke für die Links, werde ich lesen.
Grüße-
Dietrich
- Als Antwort markiert Dimitar DenkovMicrosoft contingent staff, Administrator Donnerstag, 16. November 2017 14:06