IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

MS SQL Server Discussion :

Gérer de manière automatique les journaux de logs


Sujet :

MS SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre éprouvé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2006
    Messages
    1 627
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 627
    Par défaut Gérer de manière automatique les journaux de logs
    Bonjour,

    je souhaite gérer les journaux de logs de manière automatique. Une base de données d'historiques est nourri par d'autres serveurs, et j'ai paramétré cette base pour que le journal n'excède pas X Go.

    Comme il s'agit d'un jeu de données secondaire, la sauvegarde se fait à l'année, mais la base n'a une durée de vie que d'un an (soit Histo2010, Histo2011, ...).

    J'ai vu cette discussion : http://www.developpez.net/forums/d30...e-fichier-ldf/

    mais cela ne parle que de gestion manuelle.

    Dans Management Studio, sur une base de données, dans Propriétés/Options/Réduction automatique, cette propriété peut-elle jouer sur le traitement ?

    Merci pour vos lumières

  2. #2
    Membre Expert

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2007
    Messages
    1 216
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Industrie Pharmaceutique

    Informations forums :
    Inscription : Août 2007
    Messages : 1 216
    Par défaut
    Bonjour,

    Dans quel mode de recovery se trouve votre base ?
    Si elle est en full, avez vous un job de sauvegarde du journal de transaction ?

    Lorsque vous dites:
    La sauvegarde se fait à l'année
    Est ce que ca signifie que vous effectuer un backup de votre base sur une fréquence annuelle ?!

    Comment votre base de données est elle alimentée ?

    Bonne journée

  3. #3
    Membre éprouvé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2006
    Messages
    1 627
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 627
    Par défaut
    Je n'ai pas touché à ce point de configuration, il me semble qu'elle est en simple (je vais quand même vérifier ça, au pire changer de mode de récupération est une opération couteuse ?).

    Oui, il s'agit du backup (un seul) à fréquence annuelle (au 31 décembre de l'année correspondant à la base de données), réalisé par un outil tiers made in HP.

    La base est alimentée par procédure stockée exécutée de manière chronique, procédure situées sur d'autres serveurs, ayant pour but de migrer les données vers cette table située sur ce serveur (on centralise donc).

    J'ai vu l'option d'auto-shrink disponible dans Management Studio, mais sur Internet il est recommandé de ne pas l'utiliser... Donc je m'en remets aux experts

    Merci !

  4. #4
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Par défaut
    Bonjour,

    Pour connaître le mode de récupération de votre base de données, si vous êtes sous SQL Server 2005 ou 2008, vous pouvez exécuter :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT name, recovery_model_desc
    FROM sys.databases
    WHERE name = 'maBD'
    Et sur toutes les versions, au moins depuis la 2000 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    SELECT DATABASEPROPERTYEX('maBD','Recovery')
    Ne pas sauvegarder sa base de données régulièrement est très dangereux ... que ferez-vous si le(s) disque(s) qui la supportent connaissent une panne ?
    De même ne pas tester ses backups de temps en temps est un jeu dangereux ...

    Changer de mode de restauration n'est pas coûteux, mais n'est pas sans conséquences.

    - FULL : vous pouvez vous permettre de perdre un minimum de données, et cela vous est permis par une sauvegarde régulière du fichier du journal des transactions.
    Mais en aucun cas cela ne réduit la taille du fichier du journal des transactions : SQL Server ne restitue jamais l'espace (RAM ou disque) qu'il s'est échiné à s'octroyer.

    - SIMPLE : le fichier du journal grossit suivant le volume de données que les transactions manipulent, mais il est tronqué (<> réduit) lors de la validation de toute transaction.
    Ceci fait que si une panne se produit, vous perdrez toutes les modifications de données effectuées depuis la dernière sauvegarde de la base de données.

    - BULK_LOGGED fonctionne suivant le même schéma que le mode FULL, mais il journalise de façon minimale les opérations en bloc (BULK INSERT, ...), ce qui permet d'obtenir un gain de performances important sur les imports de données.

    Ne fixez jamais la taille de votre fichier du journal des transactions, quel que soit le mode de récupération. Utilisez pour cela une taille de croissance de votre fichier en MB (pas un pourcentage).
    Taillez-le suivant la taille de votre fichier de données, on conseille environ 30%.
    En effet si le volume de données manipulé par les transaction dépasse la taille fixée, alors la transaction est annulée.

    Gardez à l'esprit qu'une réduction de fichier de base de données ne doit s'utiliser qu'en cas d'urgence : manque d'espace disque.
    Dans les autres cas, c'est le meilleur moyen de faire baisser les performances de votre base de données.

    @++

  5. #5
    Membre éprouvé
    Homme Profil pro
    Développeur .NET
    Inscrit en
    Avril 2006
    Messages
    1 627
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 39
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Avril 2006
    Messages : 1 627
    Par défaut
    Je me suis trompé, la base est en mode Complet. Apparemment le mode Complet génère beaucoup d'enregistrements dans le journal de logs non libérés par défaut... Si je comprends bien, j'ai plusieurs options :

    - Passer en mode simple, ce qui signifie que le journal ne devrait croitre que le temps d'une transaction et décroitre à la fin de celle-ci ? Si plusieurs transactions s'enchainent (8 en 1 mn), cela ne pose pas de souci ?

    - Laisser en complet, mais dans ce cas là quelle action permet de libérer de la place dans le journal de logs ? Une action de sauvegarde ? une commande SHRINK ? Je rappelle rechercher une solution automatique.

    Ne fixez jamais la taille de votre fichier du journal des transactions, quel que soit le mode de récupération. Utilisez pour cela une taille de croissance de votre fichier en MB (pas un pourcentage).
    Aïe, moi qui avais fixé à 15Go (Histoire d'éviter que d'ici quelques temps je me retoruve avec 0Mo d'espace libre sur ce serveur) au lieu des 2To par défaut (croissance pourcentage aussi par défaut)... La configuration par défaut d'une base de données SQL Server 2005 semble pas top à te lire...

    Au sujet de la base de données, il s'agit d'une base miroir représentant les informations d'une année, j'ai les données dans une autre base qui elle est sauvegardée de manière régulière... Donc le fait que la sauvegarde ne soit faite qu'à la fin ne me dérange pas (voir ça comme une archive).

  6. #6
    Expert confirmé
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Par défaut
    Posez vous la questions suivante :

    - Si je perds les données de la base au cours de l'année est ce que celle-ci doit pouvoir être restaurée en l'état juste avant un éventuel crash ?

    Si la réponse est oui alors vous allez devoir utiliser le mode de récupération complet et adopter une stratégie de sauvegarde en conséquence.

    La encore il faudra se poser une autre question :

    - De quel délai je dispose pour restaurer ma base ?

    Selon le cas vous allez devoir adapter votre stratégie de sauvegarde (Par exemple sauvegarde complète + différentielle + journaux à planifier par exemple).


    Si la réponse est négative alors vous pourrez utiliser le mode simple qui supprimera toute intervention supplémentaire sur les journaux.

    ++

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 3
    Dernier message: 30/06/2015, 10h46
  2. Réponses: 3
    Dernier message: 01/01/2015, 19h34
  3. Archiver automatiquement les Journaux Windows
    Par Shr3ck dans le forum Windows 7
    Réponses: 1
    Dernier message: 18/06/2014, 11h29
  4. Réponses: 53
    Dernier message: 10/03/2014, 19h38
  5. gérer la résolution de manière automatique
    Par pierrot2908 dans le forum AWT/Swing
    Réponses: 5
    Dernier message: 13/04/2007, 13h42

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo