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 :

Bonnes pratiques des plans de maintenance


Sujet :

Administration SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre émérite
    Inscrit en
    Mai 2008
    Messages
    686
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 686
    Par défaut Bonnes pratiques des plans de maintenance
    Bonjour,

    Je m'interroge sur les bons jobs à mettre en place dans les plans de maintenance en PRD sur nos serveurs. Depuis mon arrivée dans l'entreprise, j'ai pu revoir un peu l'ensemble de ces plans (ne serait ce que pour les voir se terminer correctement), malgré tout une réelle expérience me manque afin de modifier le travail fait par l'ancien administrateur. Je vais détailler un peu les jobs effectués sur une semaine sur nos serveurs, n'hésitez pas à réagir sur les points qui vous paraissent aberrants, inutiles, dangereux etc.

    Sauvegarde du journal des transactions toutes les 30 minutes avec suppression des anciens fichiers de log.
    Sauvegarde différentielle chaque midi
    Sauvegarde complète chaque nuit (freeze de la base + snapshot du disque)
    Défragmentation des index chaque nuit en semaine à 21H05
    Reconstruction des indexs et mise à jour complète des statistiques le samedi (le job dure environ 20H ..)

    Voici mes questions :
    Pensez vous tout d'abord que nous faisons les bonnes opérations de maintenance sur une semaine ?

    J'ai remarqué que nous mettions fréquemment notre base de données en mode journalisation simple avant des opérations comme les statistiques et la reconstruction d'index, cela pour éviter aux logs de croitre de manière exponentielle, cela vous parait adéquat, y a t'il un autre moyen ?

    Nos statistiques se font uniquement une fois par semaine, j'ai lu que les mises à jour des statistiques en automatique étaient préconisées (nous avons une machine très puissante pour héberger la base) pour éviter aux index d'être obsolète et donc non utilisé. Qu'en pensez vous ?

    Si vous avez des conseils je suis preneur.

  2. #2
    Invité
    Invité(e)
    Par défaut
    La seule bonne pratique de je connaisse est de faire une sauvegarde régulièrement en fonction de la criticité de la base, et surtout de tester sa restauration.

    Ensuite, la maintenance d'une base, d'un index ou d'une statistique dépend de plusieurs paramètres.

    Tu trouveras des infos intéressantes ici et surtout ici sur ce site

  3. #3
    Membre émérite
    Inscrit en
    Mai 2008
    Messages
    686
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 686
    Par défaut
    Merci pour ces URL

    J'en ai déjà parcouru plusieurs, notamment sur ce site. Je vais tenter d'en retirer le maximum d'informations en fonction des paramètres de notre BDD. Sauvegarder / restaurer est la chose primordiale, mais peut on réellement se satisfaire d'une base lente et non optimisée ?

    En tout cas Mr Randal a su cibler mon cas : "administrateurs de bases de données DBA involontaires", son artice est intéressant, pas de doutes à ce sujet. Quelques zones obscures pour la fragmentation et sa suppression, à creuser de mon coté.

    D'autres candidats pour me faire partager leur expérience ?

  4. #4
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 999
    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 999
    Billets dans le blog
    6
    Par défaut
    Sauvegarde du journal des transactions toutes les 30 minutes avec suppression des anciens fichiers de log.
    J'espere que ces suppressions ne remonte pas après h - 24h !
    Sauvegarde différentielle chaque midi
    Pourquoi pas

    Sauvegarde complète chaque nuit (freeze de la base + snapshot du disque)
    Quel intérêt du "freezer" la base, une sauvegarde SQL Server se faisant à chaud ! Si ce freeze est l'arrêt de la base ou du server ou le détachement des fichiers, c'est hautement stupide !

    Défragmentation des index chaque nuit en semaine à 21H05
    Il ne sert à rien de défragmenter des index qui ne le sont pas. Il ne faut défragmenter que les index qui le mérite. Lire l'article que j'ai écrit à ce sujet : http://sqlpro.developpez.com/optimis...ntenanceIndex/


    Reconstruction des indexs et mise à jour complète des statistiques le samedi (le job dure environ 20H ..)
    OK, mais aucun intérêt de refaire les statistiques puisque la reconstruction les remet à jour... Double emploi ! Il vaudrait mieux reconstruire les stats après chaque defrag...

    manque la vérification de consistance de la base DBCC CHECKDB par exemple.

    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/ * * * * *

  5. #5
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Mothership Voir le message
    Sauvegarder / restaurer est la chose primordiale, mais peut on réellement se satisfaire d'une base lente et non optimisée ?
    Non évidemment, c'est pour cela que je dis que les autres tâches de maintenance dépendent de plusieurs facteurs. Connaitre la façon dont la base est utilisée par une application est primordiale pour l'a maintenir efficacement.

    Et faire des mesures, comme par exemple l'évolution de la fragmentation des index, pour ne réindexer que le nécessaire. Analyser l'évolution du fillfactor, afin de l'ajuster le cas échéant. Surveiller la date de dernière mise à jour des statistiques etc...

  6. #6
    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 : 42
    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
    Tu as un recueil de bonnes pratiques ici :

    http://www.developpez.net/forums/d60...ice-ebook-pdf/

  7. #7
    Membre émérite
    Inscrit en
    Mai 2008
    Messages
    686
    Détails du profil
    Informations forums :
    Inscription : Mai 2008
    Messages : 686
    Par défaut
    Citation:
    Sauvegarde du journal des transactions toutes les 30 minutes avec suppression des anciens fichiers de log.
    J'espere que ces suppressions ne remonte pas après h - 24h !
    Non rassures toi, d'une part ils sont supprimés après 2 jours en local sur le serveur (ce qui est peu) et d'autre part ils sont conservés 2 semaines sur bande magnétiques.


    "Sauvegarde complète chaque nuit (freeze de la base + snapshot du disque)"
    Quel intérêt du "freezer" la base, une sauvegarde SQL Server se faisant à chaud ! Si ce freeze est l'arrêt de la base ou du server ou le détachement des fichiers, c'est hautement stupide !
    En fait la sauvegarde MSSQL, bien que s'effectuant à chaud, provoque une légère latence de 2/3 minutes sur notre système de préparation vocale. Du coup le freeze est moins long et nous permet de rattacher le disque snapshoté sur un autre serveur. L'intêret : Le serveur MSSQL ne supporte pas la charge supplémentaire que peut provoquer le traitement de la sauvegarde.

    Défragmentation des index chaque nuit en semaine à 21H05
    Reconstruction des indexs et mise à jour complète des statistiques le samedi (le job dure environ 20H ..)
    En effet il y a ici surement des lacunes et une redondance dans l'exécution des jobs. Je travaille pour refaire tout cela au propre.

    Merci pour toutes ces infos et merci Ptit_Dje pour cet(te) url qui m'avait échappée, je vais de ce pas la parcourir.
    Ef

  8. #8
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par Ptit_Dje Voir le message
    Tu as un recueil de bonnes pratiques ici :

    http://www.developpez.net/forums/d60...ice-ebook-pdf/
    Je n'ai pas vu que ce document était libre de diffusion
    J'ai parqué la discussion...

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

Discussions similaires

  1. Réponses: 2
    Dernier message: 01/09/2008, 14h53
  2. Sauvegarde des plans de maintenance
    Par Delphi-ne dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 28/05/2008, 11h15
  3. Bonnes pratiques des constructeurs multiples
    Par TheDrev dans le forum C++
    Réponses: 6
    Dernier message: 05/05/2008, 19h06
  4. De la bonne pratique des variables globales...
    Par say dans le forum C++Builder
    Réponses: 9
    Dernier message: 25/11/2005, 09h47
  5. De la bonne pratique des includes...
    Par say dans le forum C++Builder
    Réponses: 4
    Dernier message: 24/11/2005, 11h15

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