web-dev-qa-db-fra.com

Possible de restaurer une sauvegarde de SQL Server 2014 sur SQL Server 2012?

Je sais que vous ne pouvez pas (du moins pas facilement) restaurer une sauvegarde SQL Server 2012 sur SQL Server 2008. Mais comment cela fonctionne-t-il pour SQL Server 2014 à SQL Server 2012?

Au niveau de la base de données, il existe la propriété d'ajuster le mode de compatibilité à toute autre version de SQL Server.

Comment cela aide-t-il ou fonctionne-t-il? Cela n'autorisera-t-il que les fonctionnalités de 2014?

Pour être honnête, j'ai déjà essayé de restaurer une sauvegarde, mais 2012 n'a pas reconnu le fichier de données. Je ne pouvais donc pas cliquer sur ok Button pour lancer la procédure de restauration.

Ai-je raté une option importante?

58
RayofCommand

Vous NE PEUT PAS faire ceci - vous ne pouvez pas attacher/détacher ou sauvegarder/restaurer une base de données d'une version plus récente de SQL Server à un ancienne version = - les structures de fichiers internes sont trop différentes pour prendre en charge la rétrocompatibilité. Ceci est toujours vrai dans SQL Server 2014 - vous ne pouvez pas restaurer une sauvegarde 2014 sur autre chose qu'une autre boîte 2014 (ou quelque chose plus récent).

Vous pouvez soit contourner ce problème en

  • en utilisant la même version de SQL Server sur toutes vos machines - vous pouvez alors facilement sauvegarder/restaurer des bases de données entre instances

  • sinon, vous pouvez créer les scripts de base de données pour la structure (tables, vue, procédures stockées, etc.) et pour le contenu (les données réelles contenues dans les tables) soit dans SQL Server Management Studio (Tasks > Generate Scripts), soit à l'aide d'une troisième option. outil de fête

  • ou vous pouvez utiliser un outil tiers tel que celui de Red-Gate Comparaison SQL et Comparaison Données SQL pour "différencier" votre source et votre cible, générez des scripts de mise à jour à partir de ces différences. , puis exécutez ces scripts sur la plate-forme cible; cela fonctionne sur différentes versions de SQL Server.

Le paramètre mode de compatibilité contrôle uniquement les fonctionnalités T-SQL disponibles, ce qui permet d'éviter l'utilisation accidentelle de nouvelles fonctionnalités non disponibles sur d'autres serveurs. Mais cela NOT modifie le format de fichier interne pour les fichiers .mdf - c'est NOT une solution à ce problème particulier - il n'y a pas de solution pour restaurer une sauvegarde d'une version plus récente de SQL Server sur une instance plus ancienne.

75
marc_s

C’est bien possible… utilisez l’option Exporter Wizard dans l’utilisation de la source utilisez SQL SERVER NATIVE CLIENT 11, puis votre serveur source ex.192.168.100.65\SQLEXPRESS étape suivante. Sélectionnez votre nouveau serveur de destination ex.192.168.100.65\SQL2014

Veillez simplement à utiliser la bonne instance et connectez-vous les uns les autres

Il suffit de faire attention dans les procédures stockées doit être recompilé

30
Jordan Medina