Passer au contenu

Comment effectuer une sauvegarde native de ma base de données SQL Server sur Amazon RDS et la restaurer depuis Amazon S3 ?

Lecture de 5 minute(s)
0

Je souhaite effectuer une sauvegarde native de mes bases de données SQL Server sur Amazon Relational Database Service (Amazon RDS) et stocker les fichiers de sauvegarde dans Amazon Simple Storage Service (Amazon S3). Je souhaite également restaurer les sauvegardes sur la même instance de base de données Amazon RDS ou sur une instance différente qui exécute SQL Server.

Résolution

Avant de commencer la sauvegarde native, assurez-vous d'avoir configuré la sauvegarde et la restauration natives.
Remarque : Le compartiment Amazon S3 doit se trouver dans la même région AWS que votre instance de base de données Amazon RDS.

Configurer une sauvegarde native de la base de données SQL Server

Procédez comme suit :

  1. Ouvrez la console Amazon RDS.
  2. Dans le volet de navigation, choisissez Groupes d'options.
  3. Choisissez Créer un groupe, puis entrez le nom, la description, le moteur et la version du moteur de votre serveur.
  4. Sélectionnez Créer.
  5. Sélectionnez le groupe d'options, puis choisissez Ajouter une option.
  6. Dans Nom de l'option, choisissez SQLSERVER_BACKUP_RESTORE.
    Remarque : Il est recommandé de créer un nouveau rôle Gestion des identités et des accès AWS (AWS IAM) afin que ce rôle dispose des autorisations requises.
  7. Dans Destination S3, sélectionnez votre compartiment S3.
  8. Dans Planification, choisissez Immédiatement.
  9. Sélectionnez Ajouter une option.

Associer le groupe d'options à l'instance de base de données

Procédez comme suit :

  1. Dans le volet de navigation, choisissez Bases de données, puis sélectionnez l’instance à sauvegarder.
  2. Choisissez Modifier, puis sélectionnez Configuration supplémentaire.
  3. Dans Options de base de données, sélectionnez votre groupe d'options, puis sélectionnez Continuer.
  4. Consultez le Résumé des modifications.
    Remarque : Il n’existe aucune durée d’indisponibilité car il n'est pas nécessaire de redémarrer l'instance pour modifier ce groupe d'options.
  5. Dans Modifications de planification, choisissez Appliquer immédiatement, puis Modifier l’instance de base de données.
  6. Attendez que le statut passe de Modification en cours à Disponible.

Se connecter à l'instance de base de données via SSMS

Procédez comme suit :

  1. Connectez-vous à Microsoft SQL Server Management Studio (SSMS) en tant que db_owner ou db_backupoperator.
  2. Sélectionnez Nouvelle requête, puis lancez la sauvegarde de votre base de données.
  3. Saisissez l'une des instructions SQL suivantes.
    Pour lancer la sauvegarde des bases de données non chiffrées, exécutez l'instruction suivante :
    exec msdb.dbo.rds\_backup\_database @source\_db\_name='database\_name', @s3\_arn\_to\_backup\_to='arn:aws:s3:::bucket\_name/file\_name\_and\_extension', @overwrite\_S3\_backup\_file=1;
    Pour lancer la sauvegarde des bases de données chiffrées, exécutez l'instruction suivante :
    exec msdb.dbo.rds\_backup\_database @source\_db\_name='database\_name', @s3\_arn\_to\_backup\_to='arn:aws:s3:::bucket\_name/file\_name\_and\_extension', @kms\_master\_key\_arn='arn:aws:kms:region:account-id:key/key-id',    
    @overwrite\_S3\_backup\_file=1;
    Remarque : Dans les instructions précédentes, remplacez database_name, bucket_name, file_name_and_extension, region, account-id et key-id par vos valeurs. Pour restaurer la base de données utilisateur sur une nouvelle instance de base de données RDS, utilisez le fichier de sauvegarde que vous avez généré dans le compartiment S3. Lorsque vous appelez la procédure rds_backup_database ou rds_restore_database, la tâche génère des informations qui la concernent.

La tâche est terminée lorsque le statut du cycle de vie de la tâche indique RÉUSSITE. Utilisez la console Amazon S3 pour consulter le fichier de sauvegarde dans le compartiment dans lequel vous avez créé la sauvegarde de la base de données utilisateur. Pour restaurer l'instance de base de données, téléchargez le fichier de sauvegarde qui se trouve dans le compartiment S3 ou utilisez le fichier de sauvegarde de la base de données utilisateur. Vous pouvez effectuer une restauration vers la même instance de base de données Amazon RDS for SQL Server ou vers une nouvelle instance de base de données Amazon RDS. Vous pouvez également restaurer ce fichier de sauvegarde sur un serveur sur site ou sur une autre instance de base de données Amazon RDS qui exécute SQL Server. Pour en savoir plus, consultez la page Démarrage rapide : Sauvegarder et restaurer une base de données SQL Server avec SSMS sur le site Web de Microsoft.

Pour restaurer le fichier de sauvegarde qui se trouve dans le compartiment S3, utilisez l’une des instructions SQL suivantes.

Pour restaurer des bases de données non chiffrées, exécutez l'instruction suivante :

exec msdb.dbo.rds\_restore\_database @restore\_db\_name='database\_name',@s3\_arn\_to\_restore\_from='arn:aws:s3:::bucket\_name/file\_name\_and\_extension';

Pour restaurer les bases de données chiffrées, exécutez l'instruction suivante :

exec msdb.dbo.rds\_restore\_database @restore\_db\_name='database\_name',@s3\_arn\_to\_restore\_from='arn:aws:s3::: bucket\_name/file\_name\_and\_extension',  @kms\_master\_key\_arn='arn:aws:kms:region:account-id:key/key-id';

Remarque : Dans les instructions précédentes, remplacez database_name, bucket_name, file_name_and_extension, region, account-id et key-id par vos valeurs.

Pour suivre la progression de l'instruction de sauvegarde ou de restauration, vous pouvez obtenir l'ID de tâche dans la sortie. Vous pouvez également utiliser le script suivant pour identifier toutes les tâches terminées et en attente pour une base de données spécifique :

exec msdb.dbo.rds\_task\_status @db\_name='database\_name';

Remarque : Remplacez database_name par le nom de votre base de données.

Pour suivre le statut de la tâche, utilisez l'instruction SQL suivante :

exec msdb.dbo.rds\_task\_status @task\_id=5;

Pour plus d'informations sur les erreurs que vous pourriez rencontrer et leurs solutions, consultez la section Migration des charges de travail Microsoft SQL Server Enterprise vers Amazon RDS.

Informations connexes

Présentation des sauvegardes

Sauvegarde, restauration et exportation de données

Importation et exportation de bases de données SQL Server à l’aide de la sauvegarde et de la restauration natives