CORRECTIF : Problèmes d’accessibilité de base de données avec des charges de travail client à volume élevé qui utilisent EKM pour le chiffrement et la génération de clés
Symptômes
Les charges de travail client à volume élevé qui utilisent EKM (Extensible Key Management) peuvent rencontrer des problèmes intermittents d’accessibilité de base de données. Ces problèmes d’accessibilité sont dus à la création ou à la rotation fréquente du fichier journal virtuel (VLF) qui nécessite l’accès à Azure Key Vault (AKV). Si AKV ou les services de prise en charge tels que Microsoft Entra ID ne sont pas accessibles pendant cette création ou rotation, vous ne pouvez pas effectuer la création ou la rotation du VLF. En outre, cela provoque des problèmes d’accessibilité de base de données.
Les fonctions VLF peuvent être créées ou pivotées fréquemment lorsque les fichiers journaux des transactions sont petits ou que l’incrément automatique (croissance automatique) du journal des transactions est petit, au lieu d’être suffisamment volumineux pour rester en avance sur les besoins des transactions de charge de travail. Pour plus d’informations, consultez Gérer la taille du fichier journal des transactions.
Vous pouvez surveiller la taille et la fréquence de création des fonctions VLF à l’aide de sys.dm_db_log_info.
Résolution
Ce problème est résolu dans les mises à jour cumulatives suivantes pour SQL Server :
Ce correctif introduit un indicateur de trace de démarrage (TF) 15025. Vous pouvez utiliser TF 15025 pour désactiver l’accès AKV requis pour un VLF nouvellement créé, ce qui permet aux charges de travail client à volume élevé de continuer sans interruption. Une fois cet indicateur de trace activé, SQL Server qui utilise EKM pour le chiffrement et la génération de clés ne contacte pas AKV lors de la création ou de la rotation du VLF.
Pour vérifier si la clé dans AKV est toujours en cours d’utilisation ou doit être désactivée, vous devez effectuer l’une des opérations suivantes sur la base de données :
- Effectuez une sauvegarde (n’importe quel type de sauvegarde) de la base de données ou du journal des transactions.
- Exécutez sur
DBCC CHECKDB
la base de données chiffrée. - Définissez la base de données chiffrée sur l’état
OFFLINE
, puis sur l’étatONLINE
. - Créez un instantané de base de données de la base de données chiffrée.
Dans l’une des opérations répertoriées, SQL Server contacte AKV et vérifie l’accès à la clé pendant cette opération si la clé existe dans AKV.
Même si vous activez TF 15025, ces opérations atteignent toujours AKV.
Vous pouvez exécuter l’instruction Transact-SQL (T-SQL) suivante pour vérifier l’état de la clé dans une base de données :
SELECT * FROM sys.dm_database_encryption_keys
À propos des mises à jour cumulatives pour SQL Server
Chaque nouvelle mise à jour cumulative pour SQL Server contient tous les correctifs logiciels et correctifs de sécurité qui se trouvaient dans la build précédente. Nous vous recommandons d’installer la dernière build pour votre version de SQL Server :
- Dernière mise à jour cumulative pour SQL Server 2022
- Dernière mise à jour cumulative pour SQL Server 2019
État
Microsoft a confirmé l’existence de ce problème dans les produits Microsoft répertoriés dans la section « Produits concernés ».
References
- Gestion de clés extensible (EKM)
- Gérer la taille du fichier journal des transactions
- sys.dm_db_log_info (Transact-SQL)
- sys.dm_database_encryption_keys (Transact-SQL)
- Options ALTER DATABASE SET (Transact-SQL)
- En savoir plus sur la terminologie utilisée par Microsoft pour décrire les mises à jour logicielles