Bonjour,
J'aurai besoin d'éclaircissements sur la gestion des journaux de transaction...
Aujourd'hui, nous le sauvegardons fréquemment (toutes les 30 minutes sur une partition de notre serveur SQL), aucune action de SHRINK n'est effectuée. Nous procédons à des défragmentations/reconstructions d'indexes tous les jours pendant lequel nous passons la base en mode simple pour éviter une saturation des journaux (et l'envoi un SMS à notre collaborateur d'astreinte).
J'ai bien saisi que cette opération réinitialisait la chaîne de séquence, nécessitant une sauvegarde différentielle ou complète après l'opération.
Je ne souhaite plus utiliser le passage de la base en mode simple, même lors de lourds travaux de maintenance.
Je souhaite sauvegarder puis épurer fréquemment le contenu du fichier
Je ne souhaite pas non plus provoquer des extents du fichier de transaction, liés à un trop grand nombre de shrink...
J'ai dans l'idée d'avoir des fichiers d'une taille toujours identique, imaginons 2x 10 Go, et d'y faire le ménage régulièrement sans pour autant rendre l'espace au système. En période d'activité, je souhaite garder une sauvegarde toutes les 30 minutes voire plus fréquente, en période de maintenance la meilleure option serait peut être d'effectuer une ménage lorsque les données stockées atteignent 50 % de l'espace disque des fichiers.
Enfin je me demande aussi si l'exécution des sauvegardes des journaux pendant d'autres actions peut elle causer un problème (pendant une sauvegarde complète par exemple, une reconstruction d'indexes etc.)
Il est écrit par là queou encoreEn général, le journal des transactions est tronqué après chaque sauvegarde de journal conventionnelleor chez moi cela ne se produit pas. Je me demande si cela est du au fait que la réduction automatique n'est pas activée sur ma base de données (ce que l'on m'avait conseille à l'époque dans ce forum il me semble).La réalisation régulière de sauvegardes de journaux de transactions est nécessaire. Une sauvegarde de journal permet de restaurer non seulement les transactions sauvegardées, mais également de tronquer le journal pour supprimer les enregistrements de journaux sauvegardés du fichier journal.
J'avoue que les sites du MSDN sont assez bien fait, mais ils manquent clairement d'exemple pour étayer les descriptions des divers commandes avec lesquelles je ne suis pas spécialement familiers.
Voilà comment je vois mon job de sauvegarde régulier en activité :
USE MaBasePRD
DBCC shrinkfile (MaBasePRD_log, NOTRUNCATE)
DBCC shrinkfile (MaBasePRD_log_2, NOTRUNCATE)
Cela vous parait il cohérent, ou il n'a peut être rien à faire d'autres que d'activer l'autoshrink sur MaBase
Pour la période hors activité, un peu d'aide pourrait m'être utile, je vois bien dans ma tête tarabiscoté une procédure stockée scrutant toutes les 10 minutes si le fichier est utilisée à plus de 50% mais je suis sur que quelqu'un à de meilleurs outils pour faire cela.
Merci
Partager