Ajouter une mémoire tampon de journal persistante à une base de données
S'applique à : SQL Server
Cet article explique comment ajouter une mémoire tampon de journal persistante à une base de données dans SQL Server 2019 (15.x) et versions ultérieures à l’aide de Transact-SQL.
autorisations
Nécessite l'autorisation ALTER sur la base de données.
Configurer un module de mémoire persistante (Linux)
Pour configurer un module de mémoire persistante dans Linux.
Configurer un module de mémoire persistante (Windows)
Pour configurer un module de mémoire persistante dans Windows.
Ajouter une mémoire tampon de journal persistante à une base de données
L’exemple suivant ajoute une mémoire tampon de journal persistante.
ALTER DATABASE <MyDB>
ADD LOG FILE
(
NAME = <DAXlog>,
FILENAME = '<Filepath to DAX Log File>',
SIZE = 20MB
);
Par exemple :
ALTER DATABASE WideWorldImporters
ADD LOG FILE
(
NAME = wwi_log2,
FILENAME = 'F:/SQLTLog/wwi_log2.pldf',
SIZE = 20MB
);
Le fichier journal sur le volume DAX sera de 20 Mo, quelle que soit la taille spécifiée par la commande ADD FILE.
Le volume ou le montage sur lequel le nouveau fichier journal est placé doit être formaté avec DAX (NTFS) activé ou monté avec l’option DAX (XFS/EXT4).
Supprimer une mémoire tampon de journal persistante
Pour supprimer de manière sécurisée une mémoire tampon de journal persistante, la base de données doit être placée en mode mono-utilisateur afin de vider la mémoire tampon de journal persistante.
L’exemple suivant supprime une mémoire tampon de journal persistante.
ALTER DATABASE <MyDB> SET SINGLE_USER;
ALTER DATABASE <MyDB> REMOVE FILE <DAXlog>;
ALTER DATABASE <MyDB> SET MULTI_USER;
Par exemple :
ALTER DATABASE WideWorldImporters SET SINGLE_USER;
ALTER DATABASE WideWorldImporters REMOVE FILE wwi_log2;
ALTER DATABASE WideWorldImporters SET MULTI_USER;
Limites
Transparent Data Encryption (TDE) n’est pas compatible avec la mémoire tampon de journal persistante.
Les groupes de disponibilité ne peuvent utiliser cette fonctionnalité que sur des réplicas secondaires en raison de l'agent de lecture de journaux qui exige une sémantique d’écriture de journal normale sur le réplica principal. Cependant, le petit fichier journal doit être créé sur tous les nœuds (idéalement sur des volumes ou des montages DAX). En cas de basculement, le chemin de mémoire tampon du journal persistant doit exister afin que le basculement réussisse.
Dans les cas où le chemin d’accès ou le fichier n’est pas présent pendant un événement de basculement de groupe de disponibilité ou de démarrage d’une base de données, la base de données entre dans un état RECOVERY PENDING
jusqu’à ce que le problème soit résolu.
Interopérabilité avec d’autres fonctionnalités PMEM
Lorsque la mémoire tampon de journal persistante et le pool de mémoires tampons hybrides sont activés conjointement, ainsi que l’indicateur de trace de démarrage 809, le pool de mémoires tampons hybrides fonctionne en mode écriture directe.
Opérations de sauvegarde et de restauration
Les conditions de restauration normales s’appliquent. Si la mémoire tampon de journal persistante est restaurée sur un volume ou un montage DAX, elle continue de fonctionner. Sinon, elle peut être supprimée de manière sécurisée.
Étapes suivantes
- Fonctionnement (il s’exécute simplement plus rapidement) : fin de la mise en cache des journaux des mémoires non-volatiles SQL Server sur NVDIMM
- Accélération de la latence de validation des transactions en utilisant la mémoire de classe stockage dans Windows Server 2016/SQL Server 2016 SP1
- Pool de mémoires tampons hybride