Comment migrer sa base de données SQL serveur vers une version antérieure ?

Définition

Pourquoi passer ma base de données SQL Serveur sur une version antérieure ?

La version de SQL Serveur actuellement utilisé sur nos serveurs et la version 2012. Si vous avez commencé votre site Internet en local avec une version plus recente, vous devrez peut-être migrer votre base sur la version 2012 afin de l'importer sur votre formule d'hébergement depuis votre panneau de contrôle Plesk.

Cette documentation va vous expliquer la marche à suivre pour effectuer cette procédure.

Procédure

Procédure de migration de votre base de données SQL Server sur une version antérieure

Le message d'erreur que vous pouvez rencontrer lors de l'importation d'une base de données SQL Server survient parce que les fichiers de la base de données SQL Server (*.mdf, *.ndf et *.ldf) et les sauvegardes ne sont pas rétrocompatibles.  La rétrocompatibilité est la raison pour laquelle nous ne pouvons pas restaurer ou joindre une base de données créée à partir d'une version supérieure de SQL Server à une version inférieure de SQL Server. Cependant, il y a quelques options qui peuvent nous aider à déclasser la base de données d'une version supérieure de SQL Server à une version inférieure de SQL Server. Ces options incluent :

  • Utilisez l'assistant de génération de scripts dans SQL Server Management Studio
  • Utiliser les services d'intégration SQL Server
  • Créer des scripts personnalisés et des BCP

Dans cette astuce, nous allons utiliser l'assistant de génération de scripts dans SQL Server Management Studio. 

1. Scripter le schéma de base de données et les données de la version supérieure de SQL Server en utilisant l'assistant de génération de scripts dans SSMS.
2. Se connecter à la version inférieure de SQL Server et exécutez les scripts SQL générés à l'étape précédente pour créer le schéma et les données de la base de données.

Pour les besoins de l'exemple, nous allons effectuer la migration de la base de données "BDDLWS"

Étape 1 : Scripter la base de données à migrer

Scripter le schéma de la base de données "Essai LWS" sur l'instance supérieure à SQL Server 2012 (LWS-HOTLINER\SQLEXPRESS) en utilisant l'assistant Générer les scripts dans SSMS.

Dans l'Explorateur d'objets, connectez-vous à votre instance SQL Server (LWS-HOTLINER\SQLEXPRESS), faites un clic droit sur votre base de données (BDDLWS), développez les Tâches et choisissez "Générer des scripts...".

Comment migrer sa base de données SQL serveur vers une version antérieure ?

 

Cela lance l'assistant Générer et publier des scripts . Cliquez sur Suivant pour ignorer l'écran d' introduction et passer à la page Choisir des objets .

 

Comment migrer sa base de données SQL serveur vers une version antérieure ?

 

Sur la page Choisir des objets , choisissez l'option "Script de la base de données entière et de tous les objets de la base de données" , puis cliquez sur Suivant pour passer à la page "Définir les options de script" .

 

Comment migrer sa base de données SQL serveur vers une version antérieure ?

 


Sur la page Définir les options de script , spécifiez l'emplacement où vous souhaitez enregistrer le fichier de script, puis cliquez sur le bouton Avancé .

 

Comment migrer sa base de données SQL serveur vers une version antérieure ?

 

Dans la boîte de dialogue Options de script avancées ,

  • définir le script pour la version du serveur sur SQL Server 2008 R2 (ou la version de votre choix)
  • sous Options de la table / vue, définissez les déclencheurs de script, les index de script et les clés primaires de script sur True

et définissez Types de données sur Script pour Schéma et Données - cette dernière option est essentielle car elle génère les données par table.

 

Comment migrer sa base de données SQL serveur vers une version antérieure ?

 

Une fois cela fait, cliquez sur OK pour fermer la boîte de dialogue Options de script avancées et revenir à la page Définir les options de script . Dans la page Définir les options de script , cliquez sur Suivant pour continuer vers la page Résumé .

Après avoir examiné vos sélections sur la page Résumé , cliquez sur Suivant pour générer des scripts.

 

Comment migrer sa base de données SQL serveur vers une version antérieure ?

 

Une fois les scripts générés avec succès, cliquez sur le bouton Terminer pour fermer l’assistant Générer et publier des scripts .

 

Comment migrer sa base de données SQL serveur vers une version antérieure ?

 

Étape 2:
Connectez-vous à l'instance SQL Server 2008 R2 (IITCUK \ SQLSERVER2008), puis exécutez les scripts SQL générés à l'étape 1 pour créer le schéma et les données de la base de données OUTLANDER .

Dans l' Explorateur d'objets, connectez-vous à IITCUK \ SQLServer2008 , puis dans SQL Server Management Studio, ouvrez le script SQL Server que vous avez enregistré à l'étape 1.

 

Comment migrer sa base de données SQL serveur vers une version antérieure ?

 

 

Comment migrer sa base de données SQL serveur vers une version antérieure ?

 

Modifiez le script pour spécifier l'emplacement correct des données et des fichiers journaux de la base de données OUTLANDER . Ceci fait, exécutez le script pour créer la base de données OUTLANDER sur l’instance IITCUK \ SQLServer2008.

 

Comment migrer sa base de données SQL serveur vers une version antérieure ?

 

Une fois l'exécution réussie, actualisez le dossier de la base de données dans l' explorateur d'objets . Comme vous pouvez le voir sur l'image suivante, la base de données OUTLANDER a été rétrogradée avec succès.

Remarques


Il y a quelques points à prendre en compte lors de l'utilisation de cette approche.

  • Cette solution crée un fichier SQL volumineux contenant les scripts permettant de créer les objets de base de données, ainsi que des instructions INSERT pour les données des tables.
  • Pour les bases de données volumineuses, le fichier SQL peut devenir très volumineux si vous écrivez à la fois le schéma et les données et il peut s'avérer difficile à charger dans un éditeur. En outre, vous pouvez recevoir un message d'erreur lié à la mémoire de l'éditeur si le fichier est trop volumineux.
  • Pour les bases de données volumineuses, environ 1 Go ou plus, si cette approche ne fonctionne pas, envisagez d'utiliser SSIS pour migrer la base de données ou créez des scripts personnalisés pour créer un script pour les objets et BCP pour les données de chacune des tables. Vous pouvez utiliser cet assistant de génération de scripts pour générer simplement le schéma sans les données et utiliser SSIS ou BCP pour exporter et importer les données.
  • Cette approche fonctionne de SQL Server 2017 à SQL Server 2005. Certaines des options de script peuvent être légèrement différentes dans les versions les plus récentes, mais le processus reste le même.
  • Avant d'exécuter le script, vous devez l'examiner pour vous assurer que tout semble correct, comme le chemin des fichiers de la base de données, les options de la base de données, etc.
  • De même, si vous utilisez une nouvelle fonctionnalité qui n'existe pas dans la version inférieure, SQL Server ne pourra pas créer les objets et vous devrez vérifier les scripts générés et mettre à jour le code en conséquence.
  • Pour une base de données très simple, cette approche devrait fonctionner assez facilement, mais vous devrez peut-être passer du temps à apporter quelques modifications au script pour une base de données plus complexe.

Vous trouverez ci-dessous une liste de toutes les options de script. Si vous cliquez sur un élément, la partie inférieure de l’écran vous donne une courte définition de l’option.

 

Comment migrer sa base de données SQL serveur vers une version antérieure ?

 

 

Prochaines étapes

  • Pour éviter ce problème, assurez-vous toujours d'effectuer une sauvegarde complète de la base de données avant de mettre à niveau SQL Server et la base de données vers une version supérieure de SQL Server. De plus, assurez-vous de bien tester l'application avant de la distribuer aux utilisateurs.
  • Considérez cette option de rétrogradation comme votre dernière option pour annuler une mise à niveau car le temps et le stockage nécessaires peuvent être très importants.
  • Avec une très grande base de données, assurez-vous de disposer de suffisamment de mémoire pour répondre aux besoins en données.
  • Assurez-vous de vérifier le nombre de lignes et d'objets et de tester votre application avant de la mettre en production.

 

Conclusion : 


Vous êtes désormais en mesure de migrer votre base de données Sql Server vers une version antérieure. N'hésitez pas à prendre contact avec notre service technique, via un ticket d'incidence pour toutes questions.

 

Notez cet article

5 / 5
1 avis


Vous avez noté 0 étoile(s)

Cet article vous a-t-il été utile ?

Merci !

N'hésitez pas à commenter nos pages afin de nous aider à les améliorer si besoin.

Vous n'avez pas trouvé votre réponse ?

Nous vous invitons à nous contacter pour exposer votre problème :
Service technique
Service commercial

Si toutefois votre demande concerne un manque ou une erreur dans l'aide que vous venez de visualiser, n'hésitez pas à nous laisser un message vie le formulaire ici présent.