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 :

SQLSERVER 2005 : autoshrink et autogrow


Sujet :

Administration SQL Server

  1. #1
    Membre à l'essai
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Novembre 2008
    Messages
    24
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Loire (Rhône Alpes)

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

    Informations forums :
    Inscription : Novembre 2008
    Messages : 24
    Points : 20
    Points
    20
    Par défaut SQLSERVER 2005 : autoshrink et autogrow
    Bonjour,

    depuis quelques temps nous subissons périodiquement sur notre serveur de grosse lenteur.
    En effet cela concerne la journée du lundi matin (alors que nous devrions être en situation Light après le week-end).

    Après analyse je constate tous les lundis matins dans les traces de SQLSERVER PROFILER qu'un autoshrink se fait sur une grosse base et qu'il dure plus de 06:00 (option de la base de données à "true") et passe dans la matinée du lundi.

    A votre avis, est-ce une bonne piste ?
    pour exemple un job appelant des package SSIS qui tourne en 40 minutes habituellement, contre plus de 06:00 le lundi matin.

    Je vais faire le test pour lundi matin. Pour désactiver cette option autoshrink, je le positionne à false dans propriété et option, cela suffit il ? vous confirmez ??

    Autre question, l'autoshrink se déclenche après quels évènements ?

    De plus cette database à un auto grow à 1 mega, n'est-ce pas trop peu ?

    Merci pour votre aide

    si j'ai des réponses avant lundi, cela serait très sympa.

    Gilbert

  2. #2
    Membre actif
    Inscrit en
    Février 2009
    Messages
    224
    Détails du profil
    Informations forums :
    Inscription : Février 2009
    Messages : 224
    Points : 269
    Points
    269
    Par défaut
    Bonjour,
    Oui l'option AUTO_SHRINK peut être extrêment gourmande en terme de temps de traitement et c'est pourquoi il souvent préférable de désactiver cette option.Plus d'info sur : http://blogs.msdn.com/sqlserverstora...hrink-off.aspx
    De même si vos fichiers sont en accroissement automatique, il est préférable de faire des pas un peu plus gros.

    De plus compte tenu des symptômes, il y a des chances que la taille de votre base se "stabilise" car elle grossit au cours de la semaine puis elle est réduite pendant le W.E.

    Dans tous les cas si vous souhaitez réduire la taille des fichiers préférez les instrcuctions DBCC SHRINKDATABASE et DBCC SHRINKFILE, par exemple dans un travail avec une date d'exécution planifiée.

  3. #3
    Membre habitué
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    139
    Détails du profil
    Informations personnelles :
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2007
    Messages : 139
    Points : 137
    Points
    137
    Par défaut
    Bonjour,

    Je confirme les dires de jero44 :
    - Les opérations de "autoshrink" et "autogrow" sont très gourmandes en ressources CPU/HDD.
    - Désactiver l'option "Autoshrink"
    - Adapter la taille des "autogrow"

    Aussi, il est préférable de laisser de l'espace libre dans les datafiles et logfiles de façon adéquate et d'utiliser DBCC SHRINKFILE ou DBCC SHRINKDATABASE sous contrôle , ceci afin d'éviter que SQL Server passe son temps à faire du yoyo avec ces différents fichiers...

    L'idéale serait même de déterminer le cycle quotidien et hebdomadaire de ces différents fichiers afin de lui appliquer une politique de gestion appropriée...

    David.

  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 : 42
    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
    Points : 12 371
    Points
    12 371
    Par défaut
    Bonjour,

    Les opérations de rétrécissement de fichiers doivent être réservées aux cas d'urgence, c'est à dire par manque d'espace disque.

    En plus d'être gourmandes en ressources CPU et disque, vous supprimez des pages de la base de données que SQL Server a laissées vides pour s'en servir lors de futures insertions.

    Dès lors que vous rétrécissez la taille d'une base de données, SQL Server est donc obligé, à chaque fois que cela est nécessaire, d'allouer des pages sur le disque, 1000 fois plus lent qu'un accès en RAM, alors qu'elles y étaient déjà !
    Je vous laisse imaginer l'impact que cela peut avoir sur les performances de vos requêtes.

    Le mieux reste donc de bien évaluer (je vous accorde que ce n'est pas simple) la taille d'exploitation de vos fichiers de base de données (données + journal de transactions), en prenant en plus une marge, et de les laisser vos fichier en AUTO_GROW.
    Veillez à ne pas mettre un pas de grossissement de vos fichiers trop élevé, sans quoi le temps que celui-ci s'opère peut être long, et pourrir encore les performances de vos requêtes

    @++

Discussions similaires

  1. [SQLServer 2005] Constraint et valeur à NULL
    Par n00bi dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 03/05/2006, 14h14
  2. Réponses: 4
    Dernier message: 02/05/2006, 14h10
  3. [Outils][SqlServer 2005] Où se trouve l'executable ?
    Par sse dans le forum MS SQL Server
    Réponses: 18
    Dernier message: 19/04/2006, 08h55
  4. [SQLSERVER 2005 Express] Importation DB Access 2002 ?
    Par vandeyy dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 13/01/2006, 15h00
  5. [SQLServer 2005][Oracle]Quels sont les differences de coût ?
    Par Débéa dans le forum Décisions SGBD
    Réponses: 5
    Dernier message: 15/12/2005, 07h54

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