Migrez une base de données SQL Server dans SQL Server sur une machine virtuelle Azure

S’APPLIQUE À : SQL Server sur une machine virtuelle Azure

Il existe plusieurs moyens permettant de migrer une base de données utilisateur SQL Server locale vers SQL Server sur une machine virtuelle Azure. Cet article abordera brièvement différentes méthodes et recommandera la mieux adaptée à différents scénarios.

Notes

Azure a deux modèles de déploiement différents pour créer et utiliser des ressources : Resource Manager et classique. Cet article traite des deux modèles, mais Microsoft recommande d’utiliser le modèle Resource Manager dans la plupart des nouveaux déploiements.

Notes

SQL Server 2008 et SQL Server 2008 R2 se rapprochent de la fin de leur cycle de vie de prise en charge pour les instances locales. Pour étendre la prise en charge, vous pouvez migrer votre instance SQL Server vers une machine virtuelle Azure ou acheter des mises à jour de sécurité étendues pour la conserver en local. Pour plus d’informations, consultez Étendre la prise en charge de SQL Server 2008 et SQL Server 2008 R2 avec Azure

Quelles sont les principales méthodes de migration ?

Les méthodes de migration principales consistent à :

  • Effectuer une sauvegarde locale en utilisant la compression, puis copier manuellement le fichier de sauvegarde dans la machine virtuelle Azure.
  • Effectuer une sauvegarde vers une URL, puis restaurer dans la machine virtuelle Azure depuis l’URL.
  • Détacher les fichiers journaux et de données, les copier vers le Stockage Blob Azure, puis les rattacher à SQL Server dans la machine virtuelle Azure depuis l’URL
  • Convertir la machine physique locale en disque dur virtuel Hyper-V, effectuer un téléchargement vers le stockage d’objets Blob Azure, puis exécuter un déploiement en tant que nouvelle machine virtuelle en utilisant le disque dur virtuel téléchargé
  • Expédier le disque dur à l’aide du Service d’importation/exportation Windows
  • Si vous disposez d’un déploiement de groupe de disponibilité AlwaysOn local, utilisez l’Assistant Ajouter un réplica Azure pour créer un réplica dans Azure, basculez et pointez les utilisateurs vers l’instance de base de données Azure.
  • Utiliser la réplication transactionnelle de SQL Server pour configurer l’instance Azure SQL Server en tant qu’abonné, désactiver la réplication et pointer les utilisateurs vers l’instance de base de données Azure.

Conseil

Vous pouvez également utiliser ces mêmes techniques pour déplacer des bases de données entre machines virtuelles SQL Server dans Azure. Par exemple, il n’existe aucun moyen pris en charge de mettre à niveau une machine virtuelle d’image de la galerie SQL Server d’une version/édition à l’autre. Dans ce cas, il vous faut créer une nouvelle machine virtuelle SQL Server avec la nouvelle version/édition, puis utiliser l’une des techniques de migration de cet article pour déplacer vos bases de données.

Choisir une méthode de migration

Pour obtenir les meilleures performances de transfert de données, migrez les fichiers de base de données de la machine virtuelle Azure à l’aide d’un fichier de sauvegarde compressé.

Pour réduire le temps d’arrêt pendant la migration de base de données, utilisez l’option AlwaysOn ou l’option de réplication transactionnelle.

S’il n’est pas possible d’utiliser les méthodes décrites ci-dessus, migrez manuellement votre base de données. En règle générale, vous effectuez une sauvegarde de la base de données, puis une copie de la sauvegarde de la base de données dans Azure et enfin une restauration de la base de données. Vous pouvez également copier les fichiers de base de données eux-mêmes dans Azure, puis les joindre. Il existe plusieurs méthodes permettant d’effectuer manuellement le processus de migration d’une base de données vers une machine virtuelle Azure.

Notes

Lorsque vous procédez à une mise à niveau vers SQL Server 2014 ou SQL Server 2016 depuis des versions antérieures de SQL Server, vous devez prendre en compte les éventuelles modifications nécessaires. Nous vous recommandons de gérer toutes les dépendances de fonctionnalités non prises en charge par la nouvelle version de SQL Server dans le cadre de votre projet de migration. Pour plus d’informations sur les éditions et les scénarios pris en charge, consultez Mise à niveau vers SQL Server.

Le tableau suivant répertorie les principales méthodes de migration et explique dans quelles circonstances utiliser chacune d’elles.

Méthode Version de base de données source Version de base de données de destination Contrainte de taille pour la sauvegarde de base de données source Notes
Effectuer une sauvegarde locale en utilisant la compression et copier manuellement le fichier de sauvegarde dans la machine virtuelle Azure SQL Server 2005 ou ultérieur SQL Server 2005 ou ultérieur Limite de stockage de machine virtuelle Azure Cette technique est simple et éprouvée pour déplacer des bases de données d’une machine à l’autre.
Effectuer une sauvegarde vers l’URL et une restauration dans la machine virtuelle Azure depuis l’URL SQL Server 2012 SP1 CU2 ou ultérieur SQL Server 2012 SP1 CU2 ou ultérieur < 12,8 To pour SQL Server 2016, sinon < 1 To Cette méthode représente simplement une autre façon de déplacer le fichier de sauvegarde sur la machine virtuelle à l’aide du stockage Azure.
Détacher, puis copier les données et les fichiers journaux dans Stockage Blob Azure et les rattacher à SQL Server dans la machine virtuelle Azure à partir d’URL SQL Server 2005 ou ultérieur SQL Server 2014 ou ultérieur Limite de stockage de machine virtuelle Azure Utilisez cette méthode quand vous envisagez de stocker ces fichiers à l’aide du service de stockage d’objets Blob Azure et de les rattacher à SQL Server s’exécutant dans une machine virtuelle Azure, en particulier avec les bases de données très volumineuses.
Convertir l’ordinateur local pour les disques durs virtuels Hyper-V, charger sur le stockage d’objets Blob Azure, puis déployer une nouvelle machine virtuelle en utilisant le disque dur virtuel chargé SQL Server 2005 ou ultérieur SQL Server 2005 ou ultérieur Limite de stockage de machine virtuelle Azure À utiliser lors de la mise en service de votre propre licence SQL Server, lors de la migration d’une base de données que vous allez exécuter sur une version plus ancienne de SQL Server ou lors de la migration d’un système et de bases de données d’un système utilisateur dans le cadre de la migration de base de données dépendant des autres bases de données utilisateur et/ou bases de données système.
Expédition du disque dur à l’aide du Service d’importation/exportation Windows SQL Server 2005 ou ultérieur SQL Server 2005 ou ultérieur Limite de stockage de machine virtuelle Azure Utilisez le Service Import/Export de Windows lorsque la méthode de copie manuelle est trop lente, par exemple avec de très grandes bases de données.
Utiliser l’Assistant Ajout de réplica Azure SQL Server 2012 ou ultérieur SQL Server 2012 ou ultérieur Limite de stockage de machine virtuelle Azure Réduit le temps d’arrêt ; à utiliser lorsque vous disposez d’un déploiement local Always On.
Utiliser la réplication transactionnelle de SQL Server SQL Server 2005 ou ultérieur SQL Server 2005 ou ultérieur Limite de stockage de machine virtuelle Azure À utiliser si vous devez réduire le temps d’arrêt et que vous ne disposez pas d’un déploiement local Always On.

Sauvegarde et restauration

Sauvegardez votre base de données avec compression, copiez la sauvegarde sur la machine virtuelle, puis restaurez la base de données. Si le volume de votre fichier de sauvegarde est supérieur à 1 To, vous devez créer un jeu agrégé car la taille maximale d’un disque de machine virtuelle est de 1 To. Utilisez les étapes générales suivantes pour faire migrer une base de données utilisateur à l’aide de cette méthode manuelle :

  1. Effectuez une sauvegarde complète de la base de données vers un emplacement sur site.
  2. Créez ou chargez une machine virtuelle avec la version de SQL Server souhaitée.
  3. Configurez la connectivité en fonction de vos besoins. Consultez Se connecter à une machine virtuelle SQL Server sur Azure (Resource Manager).
  4. Copiez vos fichiers de sauvegarde sur votre machine virtuelle à l’aide du Bureau à distance, de l’Explorateur Windows ou de la commande de copie à partir d’une invite de commandes.

Sauvegarde sur URL et restauration à partir de l’URL

Au lieu de sauvegarder dans un fichier local, vous pouvez utiliser la sauvegarde sur URL, puis effectuer la restauration sur la machine virtuelle à partir de l’URL. SQL Server 2016 prend en charge les jeux de sauvegarde distribuée. Ils sont recommandés pour les performances et doivent dépasser les limites de taille par objet blob. Pour les bases de données très volumineuses, il est recommandé d’utiliser le Service d’importation/exportation Windows .

Détacher et attacher à partir d’une URL

Détachez votre base de données et vos fichiers journaux et transférez-les vers le stockage Blob Azure. Puis attachez la base de données sur votre machine virtuelle Azure à partir de l’URL. Utilisez cette méthode si vous souhaitez que les fichiers de la base de données physique résident dans le stockage Blob, ce qui peut être utile pour les bases de données très volumineuses. Utilisez les étapes générales suivantes pour faire migrer une base de données utilisateur à l’aide de cette méthode manuelle :

  1. Détachez les fichiers de base de données de l’instance de base de données sur site.
  2. Copiez les fichiers de la base de données détachée dans Stockage Blob Azure à l’aide de l’utilitaire de ligne de commande AZCopy.
  3. Attachez les fichiers de base de données à partir de l’URL Azure à l’instance de SQL Server dans la machine virtuelle Azure.

Effectuer une conversion vers une machine virtuelle, télécharger vers une URL et déployer en tant que nouvelle machine virtuelle

Cette méthode permet de migrer toutes les bases de données système et utilisateur dans une instance SQL Server locale vers une machine virtuelle Azure. Utilisez les étapes générales suivantes pour exécuter la migration d’une instance de SQL Server entière à l’aide de cette méthode manuelle :

  1. Convertir des machines physiques ou virtuelles en disques durs virtuels Hyper-V.
  2. Télécharger les fichiers VHD sur Azure Storage à l’aide de l’ applet de commande Add-AzureVHD.
  3. Déployer une nouvelle machine virtuelle en utilisant le VHD téléchargé.

Notes

Pour migrer une application entière, envisagez d’utiliser Azure Site Recovery].

Expédier un disque dur

Vous pouvez utiliser la méthode de service Import/Export Azure pour transférer de grandes quantités de données de fichiers vers le stockage d’objets blob Azure lorsque le coût de l’opération de téléchargement via le réseau est prohibitif, voire irréalisable. Avec ce service, vous envoyez un ou plusieurs disques durs contenant ces données à un centre de données Azure, où vos données seront téléchargées sur votre compte de stockage.

Étapes suivantes

Pour plus d’informations, consultez Présentation de SQL Server sur les machines virtuelles Azure.

Conseil

Si vous avez des questions sur les machines virtuelles SQL Server, consultez le Forum aux Questions.

Pour obtenir des instructions sur la création d’une instance SQL Server sur une machine virtuelle Azure à partir d’une image capturée, consultez la page Tips & Tricks on ‘cloning’ Azure SQL virtual machines from captured images (Trucs et astuces sur le « clonage » des machines virtuelles Azure SQL à partir d’images capturées) du blog des ingénieurs CSS SQL Server.