Nous utilisons la fonctionnalité HADR (TAWONON DISPONIBILITABILITABILITABILITÉ) de SQL Server 2012. Configuration du serveur et AG comme ci-dessous:
SQL12_SRV1 -> AG1 (primaire) - Sync - >> DBTEST
SQL12_SRV2 -> AG1 (secondaire) - >> DBTEST - ASYNC
La base de données DBTest augmente (200 Go) jour après jour, le fichier journal de la même transaction se développera également en fonction des données.
Donc, comment minimiser la taille du fichier journal de transaction en utilisant un moyen correct de la sauvegarde du journal. Sur quelle réplique nous devons prendre la sauvegarde du journal.
Merci d'avance.
Vous pouvez sauvegarder le journal des transactions de l'une des répliques . Faire la sauvegarde du journal de transaction sur la réplique principale ou la réplique secondaire marquera les journaux de transaction des réplicas comme réutilisable (à condition que aucun autre stoppers ne soit en place comme des transactions actives, etc.).
Pour effectuer un test, dans un environnement de non-production, configurez un groupe de disponibilité, comme vous l'avez dans votre système de production (commetynchrone commit vers la réplique secondaire).
Dans mon environnement de test, j'ai une base de données de test, TestBackupDatabase
, et je l'ai gonflé avec des transactions connectées via une table factice:
use TestBackupDatabase;
go
create table dbo.TestTable
(
id int identity(1, 1) not null,
some_int int not null
default 1
);
go
insert into dbo.TestTable
default values;
go 1000
Maintenant, lorsque je fais une sauvegarde du journal de transaction sur ma primaire, à l'aide de DBCC SQLPERF(LOGSPACE)
Je vois sur les deux journaux de transaction (primaire et secondaire) que l'espace utilisé a chuté en raison de la troncature du journal. BLOATINGE La transaction Connectez-vous avec le même test sur le primaire:
insert into dbo.TestTable
default values;
go 1000
Je fais maintenant une sauvegarde du journal de transaction sur la réplique secondaire ASYNC. Exécution DBCC SQLPERF(LOGSPACE)
à nouveau sur chaque réplique, je vois le même comportement: la réutilisation du journal des transactions.
BOL Référence : secondaires actifs: sauvegarde sur les répliques secondaires (groupes de disponibilité toujours
Lorsque vous utilisez Twamonon Dispontability Group, même si vous faites une sauvegarde correcte, le fichier journal peut augmenter plus grand et que le lecteur de journal peut être plein au fil du temps. Afin de maintenir une taille de fichier de journalisation correcte (minimiser), vous pouvez utiliser la technique suivante.
J'espère que cela aidera!
Dans le groupe de disponibilité, vous pouvez prendre la sauvegarde, la sauvegarde de T-BOG sur l'une des répliques et l'enregistrera sur toutes les répliques. Donc, à votre poser, prendre la sauvegarde de T-Log sur l'un ou l'autre serveur enregistrera sur les deux répliques faisant la réutilisable de T-Log sur les deux réplicas. Afin de minimiser la taille du fichier de journal de transaction, vous avez fréquemment la sauvegarde en T-Log en fonction de votre charge de travail. Si la sauvegarde T-Log horaire ne fonctionne pas (remplissant l'espace), vous devez évidemment le faire plus fréquemment.