Envoi de journaux de grandes bases de données - qu'en est-il du journal?


8

Je configure actuellement l'envoi de journaux d'une grande base de données (environ 1,5 To) et je me demande ce que je peux faire à propos du fichier journal.

En l'état, je veux faire les étapes suivantes:

  1. Changer DB en récupération complète
  2. Prendre une sauvegarde complète (5-6 heures) sur le serveur principal
  3. Restaurer la sauvegarde complète sur le secondaire (en laissant dans NORECOVERY)
  4. Prendre une sauvegarde DIFF sur le primaire
  5. Restaurer la sauvegarde DIFF sur le secondaire (toujours dans NORECOVERY)
  6. Initialiser l'envoi de journaux à l'aide de «La base de données est déjà initialisée»

Le problème est que pendant que j'effectue la sauvegarde complète, le fichier journal se remplit plus rapidement que la ou les sauvegardes ne peuvent se terminer.

Quelles options ai-je pour empêcher le remplissage du fichier journal? Puis-je simplement prendre des sauvegardes de journaux comme d'habitude pendant les sauvegardes COMPLÈTES car la restauration DIFF couvrira toutes les transactions qui ont lieu pendant cette période? Quelqu'un at-il déjà fait cela avec une base de données de cette taille, des conseils / astuces pour le rendre plus facile?

Réponses:


9

Si je vous comprends bien, votre problème majeur est les fichiers journaux pendant les quelques heures de sauvegarde. D'après votre déclaration d'ouverture, je comprends que la base de données de 1,5 To s'exécute normalement en récupération SIMPLE, et donc pas de sauvegarde de journal à faire.

Avis de non-responsabilité: je n'ai jamais effectué d'expédition de journaux sur cette échelle.

Bien sûr, vous devez vous demander si vous pouvez obtenir plus d'espace alloué pour vos fichiers journaux. Si vous le pouvez, tant mieux.

Cependant, je pense qu'une petite modification de votre plan, à condition que vous exécutiez déjà dans le modèle de récupération SIMPLE et / ou que le risque de modèle de récupération SIMPLE pendant quelques heures en vaille la peine, apaise certains de vos soucis.

  1. Conserver (ou définir) DB dans le modèle de récupération SIMPLE.
  2. Prendre une sauvegarde complète (5-6 heures) sur le serveur principal
  3. Restaurer la sauvegarde complète sur le secondaire (en laissant dans NORECOVERY)
  4. Définir DB dans le modèle de récupération complète
  5. Prendre une sauvegarde DIFF sur le primaire
  6. Restaurer la sauvegarde DIFF sur le secondaire (toujours dans NORECOVERY)
  7. Initialiser l'envoi de journaux à l'aide de «La base de données est déjà initialisée»

Les avantages apparents sont:

  1. Aucun fichier journal à sauvegarder pendant la grande sauvegarde COMPLÈTE.
  2. Passer à FULL avant de commencer la sauvegarde DIFF vous donnera le journal nécessaire pour commencer et sa croissance la plus longue se situe probablement pendant la sauvegarde DIFF.

Concernant le moment où une sauvegarde du journal peut démarrer:

https://technet.microsoft.com/en-US/library/ms190729(v=SQL.105).aspx

Cela signifie: "Une nouvelle chaîne de journaux démarre soit avec la première sauvegarde complète de la base de données après la création de la base de données, soit après le passage du modèle de récupération simple au modèle de récupération complet ou en bloc."

Donc, je crois toujours que cela fonctionnera comme indiqué. (Pas identique, mais j'ai utilisé une sauvegarde différentielle pour combler une lacune lorsque des fichiers journaux ont été perdus, afin d'établir une nouvelle origine pour les sauvegardes de journaux.)

(Souvenez-vous de ma décharge, bien sûr.)


Je pense que cela semble fonctionner. Je prends actuellement la sauvegarde complète et je ferai rapport demain avec les résultats. Merci pour l'aide RLF, je la marquerai comme réponse dès que tout sera fait, au cas où nous aurions une étape ou 2 à ajouter pour les futurs lecteurs avec ce numéro.
Kris Gruttemeyer

Attendez, la récupération complète ne s'active-t-elle pas avant la première sauvegarde complète? Je me demande si le passage à la récupération complète après la première sauvegarde complète n'aura aucun effet car la récupération complète ne s'active qu'après la première sauvegarde.
Kris Gruttemeyer

@KrisGruttemeyer - article mis à jour
RLF

Copiez cela, je ferai rapport demain. Cette chose est toujours en train de reculer.
Kris Gruttemeyer

Assurez-vous que la compression de sauvegarde est activée ...
Rob Farley
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.