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

Administration SQL Server Discussion :

[2012] Journal des transactions grossi


Sujet :

Administration SQL Server

  1. #1
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    208
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 208
    Points : 88
    Points
    88
    Par défaut [2012] Journal des transactions grossi
    Bonjour,

    j'ai un script qui me génère toutes les deux semaines des sauvegardes complètes de ma base, et des sauvegardes différentielles tous les jours. Seulement, je viens de me rendre compte que mes journaux de transaction sont énormes et prennent toute la place...

    J'ai essayé de faire :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    BACKUP LOG BDD TO DISK='D:BACKUPBASESBDD.TRN'
    Mais j'obtiens le message d'erreur :
    Msg*3202, Niveau*16, État*1, Ligne*1
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Échec d'écriture sur "D:BACKUPBASESBDD.TRN"*: 112(Espace insuffisant sur le disque.)
    Msg*3202, Niveau*16, État*2, Ligne*1
    Échec d'écriture sur "D:BACKUPBASESBDD.TRN"*: 112(Espace insuffisant sur le disque.)
    Msg*3013, Niveau*16, État*1, Ligne*1
    BACKUP LOG s'est terminé anormalement.
    Je suis tombé sur ce post :
    http://www.developpez.net/forums/d14...a/#post7966530

    Mais je ne sais pas si cela va convenir.

    De plus, si je réutilise :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    BACKUP LOG BMO_BDD TO DISK='D:\BACKUPBASES\BDD.TRN'
    Aurai-je encore des problèmes de taille ?

    Je vous remercie.

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 772
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 772
    Points : 52 737
    Points
    52 737
    Billets dans le blog
    5
    Par défaut
    Il va falloir faire de la place sur vos disques ou sur les sauvegardes ou bien purger par un moyen ou par un autre et de toute façon gérer correctement vos journaux.
    1) purger les fichiers de sauvegardes : EXEC xp_delete file à me lire :http://blog.developpez.com/sqlpro/p9...sous_ms_sql_se
    2) rendre les fichiers de sauvegarde moins gros : BACKUP ... WITh COMPRESSION
    3) purger les journaux de transactions : ALTER DATABASE ??? SET RECOVERY SIMPLE WITH ROLLBACK IMMEDIATE; puis quelques minutes après ALTER DATABASE ??? SET RECOVERY FULL;
    4) faire des sauvegardes régulières de vos journaux de transactions (par exemple toutes les 20 minutes) BACKUP LOG ...

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  3. #3
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    208
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 208
    Points : 88
    Points
    88
    Par défaut
    Je vous remercie pour votre retour.

    Je vais essayer de mettre ça en pratique.

  4. #4
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    208
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 208
    Points : 88
    Points
    88
    Par défaut
    Je viens d'essayer votre technique pour "purger" les journaux de transactions, seulement mes fichiers sont toujours aussi gros.

    Voici ce que j'ai fait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ALTER DATABASE MABDD SET RECOVERY SIMPLE WITH ROLLBACK IMMEDIATE;
    Puis j'ai réalisé une sauvegarde complète.

    Et j'ai modifié ma méthode de récupération :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    ALTER DATABASE MABDD SET RECOVERY FULL;
    Les journaux font toujours la même taille. J'ai vu sur plusieurs sites qu'il y avait la commande :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DBCC SHRINKFILE(toto_log, 200)
    Mais je n'ai pas "osé" l'utiliser dans mon cas.

    Vous précisez qu'il faut attendre quelques minutes, peut être n'ai je pas attendu assez longtemps ?

    EDIT : Je viens de passer par le Studio en faisant "Réduire", et là par contre j'ai pu réduire la taille de mes logs. Je vais ajouter la sauvegarde de ces fichiers dans mon script. Merci pour votre aide.

  5. #5
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 772
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 772
    Points : 52 737
    Points
    52 737
    Billets dans le blog
    5
    Par défaut
    Citation Envoyé par Marty000 Voir le message
    J'ai vu sur plusieurs sites qu'il y avait la commande :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    DBCC SHRINKFILE(toto_log, 200)
    Mais je n'ai pas "osé" l'utiliser dans mon cas.
    Vous avez bien fait. Ne lisez pas les sites stupide ! purger ne veut pas dire réduire. Quand vous purgez un radiateur celui-ci diminue t-il de volume ???

    Vous précisez qu'il faut attendre quelques minutes, peut être n'ai je pas attendu assez longtemps ?

    EDIT : Je viens de passer par le Studio en faisant "Réduire", et là par contre j'ai pu réduire la taille de mes logs. Je vais ajouter la sauvegarde de ces fichiers dans mon script. Merci pour votre aide.
    ça c'est stupide !

    En effet, votre journal va devoir recommencer à grossir, ce qui pénalise FORTEMENT les performances.

    A me lire : http://blog.developpez.com/sqlpro/p5..._fichiers_et_t
    En particulier le paragraphe "Pire ! C’est possible…"...

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    208
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 208
    Points : 88
    Points
    88
    Par défaut
    Merci pour ce complément d'informations.

    Je viens de mettre en place des sauvegardes du journal des transactions quotidiennes (vers3h00 du matin) avec :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    BACKUP LOG MBDD TO DISK : 'MonChemin'
    D'après ce que j'ai compris cela me permettra de conserver une taille de journal cohérente, ou est ce que je risque de me retrouver avec un fichier de logs à nouveau énorme ?

    Je vous remercie.

  7. #7
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 772
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 772
    Points : 52 737
    Points
    52 737
    Billets dans le blog
    5
    Par défaut
    Citation Envoyé par Marty000 Voir le message
    ...est ce que je risque de me retrouver avec un fichier de logs à nouveau énorme ?
    Potentiellement oui, d'autant plus que vous ne faite ceci qu'une seule fois par jour et qu'en une journée il peut y avoir de très nombreuses transactions....

    En principe il faut le faire plusieurs fois par jour, par exemple toutes les 20 minutes.

    Ensuite le journal peut croitre de façon très importante si des opérations particulières sont effectuées.

    Par exemple lors des "release" de la base, dans laquelle on rajoute des colonnes, "splite" des tables, etc....

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  8. #8
    Membre régulier
    Profil pro
    Inscrit en
    Mai 2006
    Messages
    208
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Mai 2006
    Messages : 208
    Points : 88
    Points
    88
    Par défaut
    Encore merci pour ces informations.

    J'ai mis en place une sauvegarde toutes les 30min pour l'instant.

    Je verrai si cela pose problème.

  9. #9
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 772
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 772
    Points : 52 737
    Points
    52 737
    Billets dans le blog
    5
    Par défaut
    Citation Envoyé par Marty000 Voir le message
    Encore merci pour ces informations.

    J'ai mis en place une sauvegarde toutes les 30min pour l'instant.

    Je verrai si cela pose problème.
    C'est bien, cela n'a pas d'incidence majeure, car si vous faites 1 fois ou 50 fois dans la journée, cela prendre a peu près le même temps global....

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

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

Discussions similaires

  1. [ASE 12.0] Checkpoint et purge du journal des transaction
    Par msomso dans le forum Adaptive Server Enterprise
    Réponses: 5
    Dernier message: 05/06/2007, 11h03
  2. [interbase] journal des transactions
    Par maamar1979 dans le forum InterBase
    Réponses: 4
    Dernier message: 03/10/2006, 11h47
  3. PB : Comment regénérer mon journal des transactions ?
    Par SPIKE84 dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 13/02/2006, 09h38
  4. Automatisation de la purge du journal des transactions
    Par Nathan dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 30/09/2004, 08h05
  5. vider le journal des transactions
    Par coucoucmoi dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 04/05/2004, 09h21

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