Utilisez la procédure stockée sp_rds_copy_database pour répliquer une base de données sur ApsaraDB RDS for SQL Server 2012 ou version ultérieure. La durée nécessaire varie selon la taille de la base de données source.
Pour répliquer une base de données sur une instance RDS exécutant SQL Server 2008 R2, consultez la rubrique Répliquer des bases de données d'une instance ApsaraDB RDS exécutant SQL Server 2008 R2.
Prérequis
Avant de commencer, vérifiez que vous disposez des éléments suivants :
Une instance RDS exécutant SQL Server 2012 ou version ultérieure
Une capacité de stockage disponible sur l'instance RDS de destination au moins 1,3 fois supérieure à la taille de la base de données source
Répliquer une base de données
Exécutez les instructions suivantes dans l'ordre pour répliquer une base de données.
Étape 1 : Basculez vers le contexte de la base de données master.
USE master
GO
Étape 2 : (Facultatif) Vérifiez la version du moteur de base de données.
-- Verify the SQL Server version before proceeding
SELECT @@Version
GO
Étape 3 : Créez la base de données source (ignorez cette étape si la base de données source existe déjà).
-- Create the source database for testing
CREATE DATABASE testdb
GO
Étape 4 : Répliquez la base de données source.
-- Replicate testdb (source) to testdb_copy (destination)
-- Replace testdb and testdb_copy with your actual database names
EXEC sp_rds_copy_database 'testdb', 'testdb_copy'
Surveiller la progression de la réplication
Après avoir appelé sp_rds_copy_database, interrogez les vues système sys.databases et sys.database_recovery_status pour suivre la progression.
Vérifiez si la base de données de destination a été créée :
SELECT *
FROM sys.databases
WHERE name IN ('testdb', 'testdb_copy')
Vérifiez l'état de récupération des bases de données :
SELECT
family_guid, database_guid, *
FROM sys.database_recovery_status
WHERE DB_NAME(database_id) IN ('testdb', 'testdb_copy')
Étapes suivantes
Connectez-vous à la base de données de destination et vérifiez le schéma ainsi que les données.
Mettez à jour les chaînes de connexion de votre application si vous utilisez la base de données répliquée comme environnement de remplacement ou de test.