Migrez une base de données SQL Server dans SQL Server sur une machine virtuelle AzureMigrate a SQL Server database to SQL Server on an Azure virtual machine

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.There are a number of ways to migrate an on-premises SQL Server user database to SQL Server in an Azure virtual machine (VM). Cet article abordera brièvement différentes méthodes et recommandera la mieux adaptée à différents scénarios.This article will briefly discuss various methods and recommend the best method for various scenarios.

Notes

Azure dispose de deux modèles de déploiement différents pour créer et utiliser des ressources : Resource Manager et classique.Azure has two different deployment models for creating and working with resources: Resource Manager and classic. Cet article traite des deux modèles, mais Microsoft recommande d’utiliser le modèle Resource Manager dans la plupart des nouveaux déploiements.This article covers using both models, but Microsoft recommends that most new deployments use the Resource Manager model.

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.SQL Server 2008 and SQL Server 2008 R2 are approaching the end of their support life cycle for on-premises instances. 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.To extend support, you can either migrate your SQL Server instance to an Azure VM, or buy Extended Security Updates to keep it on-premises. Pour plus d’informations, consultez Étendre la prise en charge de SQL Server 2008 et SQL Server 2008 R2 avec AzureFor more information, see Extend support for SQL Server 2008 and 2008 R2 with Azure

Quelles sont les principales méthodes de migration ?What are the primary migration methods?

Les méthodes de migration principales consistent à :The primary migration methods are:

  • Effectuer une sauvegarde locale en utilisant la compression, puis copier manuellement le fichier de sauvegarde dans la machine virtuelle Azure.Perform an on-premises backup using compression, and then manually copy the backup file into the Azure VM.
  • Effectuer une sauvegarde vers une URL, puis restaurer dans la machine virtuelle Azure depuis l’URL.Perform a backup to URL and then restore into the Azure VM from the 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’URLDetach the data and log files, copy them to Azure Blob storage, and then attach them to SQL Server in the Azure VM from the 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éConvert the on-premises physical machine to a Hyper-V VHD, upload it to Azure Blob storage, and then deploy it as new VM using uploaded VHD.
  • Expédier le disque dur à l’aide du Service d’importation/exportation WindowsShip the hard drive using the Windows Import/Export Service.
  • 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.If you have an AlwaysOn Availability Group deployment on-premises, use the Add Azure Replica Wizard to create a replica in Azure, failover, and point users to the Azure database instance.
  • 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.Use SQL Server transactional replication to configure the Azure SQL Server instance as a subscriber, disable replication, and point users to the Azure database instance.

Conseil

Vous pouvez également utiliser ces mêmes techniques pour déplacer des bases de données entre machines virtuelles SQL Server dans Azure.You can also use these same techniques to move databases between SQL Server VMs in 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.For example, there is no supported way to upgrade a SQL Server gallery-image VM from one version/edition to another. 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.In this case, you should create a new SQL Server VM with the new version/edition, and then use one of the migration techniques in this article to move your databases.

Choisir une méthode de migrationChoose a migration method

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é.For best data transfer performance, migrate the database files into the Azure VM using a compressed backup file.

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.To minimize downtime during the database migration process, use either the AlwaysOn option or the transactional replication option.

S’il n’est pas possible d’utiliser les méthodes décrites ci-dessus, migrez manuellement votre base de données.If it is not possible to use the above methods, manually migrate your database. 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.Generally, you start with a database backup, follow it with a copy of the database backup into Azure, and then restore the database. Vous pouvez également copier les fichiers de base de données eux-mêmes dans Azure, puis les joindre.You can also copy the database files themselves into Azure and then attach them. Il existe plusieurs méthodes permettant d’effectuer manuellement le processus de migration d’une base de données vers une machine virtuelle Azure.There are several methods by which you can accomplish this manual process of migrating a database into an Azure VM.

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.When you upgrade to SQL Server 2014 or SQL Server 2016 from older versions of SQL Server, you should consider whether changes are needed. 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.We recommend that you address all dependencies on features not supported by the new version of SQL Server as part of your migration project. Pour plus d’informations sur les éditions et les scénarios pris en charge, consultez Mise à niveau vers SQL Server.For more information on the supported editions and scenarios, see Upgrade to SQL Server.

Le tableau suivant répertorie les principales méthodes de migration et explique dans quelles circonstances utiliser chacune d’elles.The following table lists each of the primary migration methods and discusses when the use of each method is most appropriate.

MéthodeMethod Version de base de données sourceSource database version Version de base de données de destinationDestination database version Contrainte de taille pour la sauvegarde de base de données sourceSource database backup size constraint NotesNotes
Effectuer une sauvegarde locale en utilisant la compression et copier manuellement le fichier de sauvegarde dans la machine virtuelle AzurePerform an on-premises backup using compression and manually copy the backup file into the Azure virtual machine SQL Server 2005 ou ultérieurSQL Server 2005 or greater SQL Server 2005 ou ultérieurSQL Server 2005 or greater Limite de stockage de machine virtuelle AzureAzure VM storage limit Cette technique est simple et éprouvée pour déplacer des bases de données d’une machine à l’autre.This technique is simple and well-tested for moving databases across machines.
Effectuer une sauvegarde vers l’URL et une restauration dans la machine virtuelle Azure depuis l’URLPerform a backup to URL and restore into the Azure virtual machine from the URL SQL Server 2012 SP1 CU2 ou ultérieurSQL Server 2012 SP1 CU2 or greater SQL Server 2012 SP1 CU2 ou ultérieurSQL Server 2012 SP1 CU2 or greater < 12,8 To pour SQL Server 2016, sinon < 1 To< 12.8 TB for SQL Server 2016, otherwise < 1 TB 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.This method is just another way to move the backup file to the VM using Azure storage.
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’URLDetach and then copy the data and log files to Azure Blob storage and then attach to SQL Server in Azure virtual machine from URL SQL Server 2005 ou ultérieurSQL Server 2005 or greater SQL Server 2014 ou ultérieurSQL Server 2014 or greater Limite de stockage de machine virtuelle AzureAzure VM storage limit 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.Use this method when you plan to store these files using the Azure Blob storage service and attach them to SQL Server running in an Azure VM, particularly with very large databases
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éConvert on-premises machine to Hyper-V VHDs, upload to Azure Blob storage, and then deploy a new virtual machine using uploaded VHD SQL Server 2005 ou ultérieurSQL Server 2005 or greater SQL Server 2005 ou ultérieurSQL Server 2005 or greater Limite de stockage de machine virtuelle AzureAzure VM storage limit À 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.Use when bringing your own SQL Server license, when migrating a database that you'll run on an older version of SQL Server, or when migrating system and user databases together as part of the migration of database dependent on other user databases and/or system databases.
Expédition du disque dur à l’aide du Service d’importation/exportation WindowsShip hard drive using Windows Import/Export Service SQL Server 2005 ou ultérieurSQL Server 2005 or greater SQL Server 2005 ou ultérieurSQL Server 2005 or greater Limite de stockage de machine virtuelle AzureAzure VM storage limit 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.Use the Windows Import/Export Service when manual copy method is too slow, such as with very large databases
Utiliser l’Assistant Ajout de réplica AzureUse the Add Azure Replica Wizard SQL Server 2012 ou ultérieurSQL Server 2012 or greater SQL Server 2012 ou ultérieurSQL Server 2012 or greater Limite de stockage de machine virtuelle AzureAzure VM storage limit Réduit le temps d’arrêt ; à utiliser lorsque vous disposez d’un déploiement local Always On.Minimizes downtime, use when you have an Always On on-premises deployment
Utiliser la réplication transactionnelle de SQL ServerUse SQL Server transactional replication SQL Server 2005 ou ultérieurSQL Server 2005 or greater SQL Server 2005 ou ultérieurSQL Server 2005 or greater Limite de stockage de machine virtuelle AzureAzure VM storage limit À utiliser si vous devez réduire le temps d’arrêt et que vous ne disposez pas d’un déploiement local Always On.Use when you need to minimize downtime and don't have an Always On on-premises deployment

Sauvegarde et restaurationBack up and restore

Sauvegardez votre base de données avec compression, copiez la sauvegarde sur la machine virtuelle, puis restaurez la base de données.Back up your database with compression, copy the backup to the VM, and then restore the database. 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.If your backup file is larger than 1 TB, you must create a striped set because the maximum size of a VM disk is 1 TB. Utilisez les étapes générales suivantes pour faire migrer une base de données utilisateur à l’aide de cette méthode manuelle :Use the following general steps to migrate a user database using this manual method:

  1. Effectuez une sauvegarde complète de la base de données vers un emplacement sur site.Perform a full database backup to an on-premises location.
  2. Créez ou chargez une machine virtuelle avec la version de SQL Server souhaitée.Create or upload a virtual machine with the desired version of SQL Server.
  3. Configurez la connectivité en fonction de vos besoins.Setup connectivity based on your requirements. Consultez Se connecter à une machine virtuelle SQL Server sur Azure (Resource Manager).See Connect to a SQL Server Virtual Machine on 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.Copy your backup file(s) to your VM using remote desktop, Windows Explorer, or the copy command from a command prompt.

Sauvegarde sur URL et restauration à partir de l’URLBackup to URL and Restore from 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.Instead of backing up to a local file, you can use Backup to URL and then Restore from URL to the VM. SQL Server 2016 prend en charge les jeux de sauvegarde distribuée.SQL Server 2016 supports striped backup sets. Ils sont recommandés pour les performances et doivent dépasser les limites de taille par objet blob.They're recommended for performance and required to exceed the size limits per blob. Pour les bases de données très volumineuses, il est recommandé d’utiliser le Service d’importation/exportation Windows .For very large databases, the use of the Windows Import/Export Service is recommended.

Détacher et attacher à partir d’une URLDetach and attach from a URL

Détachez votre base de données et vos fichiers journaux et transférez-les vers le stockage Blob Azure.Detach your database and log files and transfer them to Azure Blob storage. Puis attachez la base de données sur votre machine virtuelle Azure à partir de l’URL.Then attach the database from the URL on your Azure VM. 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.Use this method if you want the physical database files to reside in Blob storage, which might be useful for very large databases. Utilisez les étapes générales suivantes pour faire migrer une base de données utilisateur à l’aide de cette méthode manuelle :Use the following general steps to migrate a user database using this manual method:

  1. Détachez les fichiers de base de données de l’instance de base de données sur site.Detach the database files from the on-premises database instance.
  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.Copy the detached database files into Azure Blob storage using the AZCopy command-line utility.
  3. Attachez les fichiers de base de données à partir de l’URL Azure à l’instance de SQL Server dans la machine virtuelle Azure.Attach the database files from the Azure URL to the SQL Server instance in the Azure VM.

Effectuer une conversion vers une machine virtuelle, télécharger vers une URL et déployer en tant que nouvelle machine virtuelleConvert to a VM, upload to a URL, and deploy as a new VM

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.Use this method to migrate all system and user databases in an on-premises SQL Server instance to an Azure virtual machine. 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 :Use the following general steps to migrate an entire SQL Server instance using this manual method:

  1. Convertir des machines physiques ou virtuelles en disques durs virtuels Hyper-V.Convert physical or virtual machines to Hyper-V VHDs.
  2. Télécharger les fichiers VHD sur Azure Storage à l’aide de l’ applet de commande Add-AzureVHD.Upload VHD files to Azure Storage by using the Add-AzureVHD cmdlet.
  3. Déployer une nouvelle machine virtuelle en utilisant le VHD téléchargé.Deploy a new virtual machine by using the uploaded VHD.

Notes

Pour migrer une application entière, envisagez d’utiliser Azure Site Recovery].To migrate an entire application, consider using Azure Site Recovery].

Expédier un disque durShip a hard drive

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.Use the Windows Import/Export Service method to transfer large amounts of file data to Azure Blob storage in situations where uploading over the network is prohibitively expensive or not feasible. 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.With this service, you send one or more hard drives containing that data to an Azure data center where your data will be uploaded to your storage account.

Étapes suivantesNext steps

Pour plus d’informations, consultez Présentation de SQL Server sur les machines virtuelles Azure.For more information, see SQL Server on Azure Virtual Machines overview.

Conseil

Si vous avez des questions sur les machines virtuelles SQL Server, consultez le Forum aux Questions.If you have questions about SQL Server virtual machines, see the Frequently Asked 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.For instructions on creating SQL Server on an Azure Virtual Machine from a captured image, see Tips & Tricks on ‘cloning’ Azure SQL virtual machines from captured images on the CSS SQL Server Engineers blog.