FIX: Probleme mit der Barrierefreiheit von Datenbanken mit hohen Kundenarbeitslasten, die EKM für Verschlüsselung und Schlüsselgenerierung verwenden
Problembeschreibung
Hohe Kundenarbeitslasten, die extensible Key Management (EKM) verwenden, können zeitweilige Probleme mit der Barrierefreiheit von Datenbanken auftreten. Diese Barrierefreiheitsprobleme werden durch die häufige Erstellung oder Drehung der virtuellen Protokolldatei (VLF) verursacht, die Zugriff auf Azure Key Vault (AKV) erfordert. Wenn AKV oder unterstützende Dienste wie Microsoft Entra ID während dieser Erstellung oder Drehung nicht zugänglich sind, können Sie die Erstellung oder Drehung des VLF nicht ausführen. Darüber hinaus verursacht sie Probleme mit der Barrierefreiheit von Datenbanken.
VLFs können häufig erstellt oder gedreht werden, wenn die Transaktionsprotokolldateien klein sind, oder das automatische Wachstum (autogrow) des Transaktionsprotokolls ist klein, anstatt groß genug, um den Anforderungen der Workload-Transaktionen voraus zu bleiben. Weitere Informationen finden Sie unter Verwalten der Größe der Transaktionsprotokolldatei.
Sie können die Größe und die Erstellungshäufigkeit von VLFs mithilfe von sys.dm_db_log_info überwachen.
Lösung
Dieses Problem wurde in den folgenden kumulativen Updates für SQL Server behoben:
Dieser Fix führt ein Startablaufverfolgungskennzeichnung (TF) 15025 ein. Sie können TF 15025 verwenden, um den AKV-Zugriff zu deaktivieren, der für ein neu erstelltes VLF erforderlich ist, wodurch Kundenarbeitslasten mit hohem Volumen ohne Unterbrechung fortgesetzt werden können. Sobald dieses Ablaufverfolgungskennzeichnung aktiviert ist, kontaktiert SQL Server, der EKM für Verschlüsselung und Schlüsselgenerierung verwendet, während der Erstellung oder Drehung des VLF nicht mehr mit AKV.
Um zu überprüfen, ob der Schlüssel in AKV noch verwendet wird oder deaktiviert werden muss, müssen Sie einen der folgenden Vorgänge in der Datenbank ausführen:
- Erstellen Einer Sicherung (beliebiger Sicherungstyp) der Datenbank oder des Transaktionsprotokolls.
- Wird für die verschlüsselte Datenbank ausgeführt
DBCC CHECKDB
. - Legen Sie die verschlüsselte Datenbank auf den
OFFLINE
Zustand und dann auf denONLINE
Zustand fest. - Erstellen Sie eine Datenbankmomentaufnahme der verschlüsselten Datenbank.
In einem der aufgelisteten Vorgänge kontaktiert SQL Server AKV und überprüft den Schlüsselzugriff während dieses Vorgangs, wenn der Schlüssel in AKV vorhanden ist.
Auch wenn Sie TF 15025 aktivieren, erreichen diese Vorgänge weiterhin AKV.
Sie können die folgende Transact-SQL (T-SQL)-Anweisung ausführen, um den Status des Schlüssels in einer Datenbank zu überprüfen:
SELECT * FROM sys.dm_database_encryption_keys
Informationen zu kumulativen Updates für SQL Server
Jedes neue kumulative Update für SQL Server enthält alle Hotfixes und Sicherheitsupdates, die sich im vorherigen Build befanden. Es wird empfohlen, den neuesten Build für Ihre Version von SQL Server zu installieren:
Status
Microsoft hat bestätigt, dass es sich hierbei um ein Problem bei den in diesem Artikel genannten Microsoft-Produkten handelt.
References
- Erweiterbare Schlüsselverwaltung (Extensible Key Management, EKM)
- Verwalten der Größe der Transaktionsprotokolldatei
- sys.dm_db_log_info (Transact-SQL)
- sys.dm_database_encryption_keys (Transact-SQL)
- ALTER DATABASE SET-Optionen (Transact-SQL)
- Erfahren Sie mehr über die Terminologie, die Microsoft zum Beschreiben von Softwareupdates verwendet.