Les traductions sont fournies par des outils de traduction automatique. En cas de conflit entre le contenu d'une traduction et celui de la version originale en anglais, la version anglaise prévaudra.
Configuration de TempDB pour les déploiements multi-AZ
Si votre instance de base de données RDS for SQL Server est un déploiement multi-AZ qui utilise la mise en miroir de la base de données (DBM, Database Mirroring) ou les groupes de disponibilité (AG, Availability Groups) toujours actifs, gardez à l’esprit les points suivants concernant l’utilisation de la base de données tempdb.
Vous ne pouvez pas répliquer les données tempdb de votre instance de base de données principale vers votre instance de base de données secondaire. Lorsque vous basculez vers une instance de base de données secondaire, tempdb sera vide sur cette instance de base de données secondaire.
Vous pouvez synchroniser la configuration des options de la base de données tempdb, y compris ses paramètres de dimensionnement des fichiers et de croissance automatique, entre votre instance de base de données principale et celle secondaire. La synchronisation de la configuration tempDB est prise en charge sur toutes les versions de RDS for SQL Server. Vous pouvez activer la synchronisation automatique de la configuration tempdb à l’aide de la procédure stockée suivante :
EXECUTE msdb.dbo.rds_set_system_database_sync_objects @object_types = 'TempDbFile';
Important
Avant d’utiliser la procédure stockée rds_set_system_database_sync_objects, assurez-vous d’avoir défini votre configuration tempdb préférée sur votre instance de base de données principale plutôt que sur celle secondaire. Si vous avez modifié la configuration sur votre instance de base de données secondaire, votre configuration tempdb préférée risque d’être supprimée lorsque vous activerez la synchronisation automatique.
Vous pouvez utiliser la fonction suivante pour vérifier si la synchronisation automatique de la configuration tempdb est activée :
SELECT * from msdb.dbo.rds_fn_get_system_database_sync_objects();
Lorsque la synchronisation automatique de la configuration tempdb est activée, une valeur est renvoyée pour le champ object_class. Lorsqu’elle est désactivée, aucune valeur n’est renvoyée.
Vous pouvez utiliser la fonction suivante pour trouver la dernière synchronisation des objets selon le fuseau horaire UTC :
SELECT * from msdb.dbo.rds_fn_server_object_last_sync_time();
Par exemple, si vous avez modifié la configuration tempdb à 01 h 00, puis que vous exécutez la fonction rds_fn_server_object_last_sync_time, la valeur renvoyée pour last_sync_time doit être postérieure à 01 h 00, ce qui indique qu’une synchronisation automatique a eu lieu.
Si vous utilisez également la réplication des tâches SQL Server Agent, vous pouvez activer la réplication à la fois pour les tâches SQL Agent et pour la configuration tempdb en les fournissant dans le paramètre @object_type :
EXECUTE msdb.dbo.rds_set_system_database_sync_objects @object_types = 'SQLAgentJob,TempDbFile';
Pour plus d’informations sur la réplication des tâches SQL Server Agent, consultezActivation de la réplication des tâches de l'agent SQL Server.
Au lieu d’utiliser la procédure stockée rds_set_system_database_sync_objects pour garantir la synchronisation automatique des modifications de configuration tempdb, vous pouvez utiliser l’une des méthodes manuelles suivantes :
Note
Nous vous recommandons d’activer la synchronisation automatique de la configuration tempdb à l’aide de la procédure stockée rds_set_system_database_sync_objects. L’utilisation de la synchronisation automatique évite d’avoir à effectuer ces tâches manuelles chaque fois que vous modifiez votre configuration tempdb.
-
Tout d'abord, modifiez votre instance de base de données et désactivez le déploiement multi-AZ, puis modifier tempdb, puis enfin réactivez le déploiement multi-AZ. Cette méthode n'entraîne aucun temps d'arrêt.
Pour plus d'informations, consultez Modification d'une instance de base de données Amazon RDS.
-
Tout d'abord, modifiez
tempdbdans l'instance principale d'origine, puis exécutez un basculement manuel et enfin modifieztempdbdans la nouvelle instance principale. Cette méthode implique un temps d'arrêt.Pour plus d’informations, consultez Redémarrage d'une instance de base de données.