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 :

checktable de toutes les tables = checkdb ?


Sujet :

Administration SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre émérite
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Août 2006
    Messages
    730
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 730
    Par défaut checktable de toutes les tables = checkdb ?
    Bonjour,

    nos bases étant assez grosses (x téras) et devant passer en dispo 24/24 7/7, nous n'avons plus la possibilité de faire le chekdb le dimanche;
    je me demandais si l'on faisait un checktable de toutes les tables (ou un checkfilegroup) cela serait-il équivalent a un chekdb ?
    je parle bien sûr des userdatabases pas des bases systèmes.

    merci de vos réponses

  2. #2
    Membre émérite

    Homme Profil pro
    Auditeur informatique
    Inscrit en
    Novembre 2014
    Messages
    817
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : Tunisie

    Informations professionnelles :
    Activité : Auditeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2014
    Messages : 817
    Billets dans le blog
    2
    Par défaut
    Bonjour

    DBCC CHECKDB =DBCC CHECKTABLE + DBCC CHECKALLOC + DBCC CHECKCATALOG

    Si tu veux optimiser utiliser le avec l'option WITH NO_INFOMSGS (Cette clause vous permets de supprimer des centaines de messages, et ne renvoie que les erreurs trouvées)

  3. #3
    Membre émérite
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Août 2006
    Messages
    730
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 730
    Par défaut
    Merci pour ta réponse,

    nous utilisons déjà cette option et ce n'est pas le temps pris par les messages qui gênent, le chekdb prend 9h sur un serveur 64core avec 256Go de RAM !
    la base contient 1500 tables dont certaines font 500Go

    pour préciser, on comptait faire des checktable au fil de l'eau suivant l'utilisation du serveur (ex: grosses tables la nuit de 3 a 4h du matin, les petites pendant le TP)

  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
    22 002
    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 : 22 002
    Billets dans le blog
    6
    Par défaut
    Il serait beaucoup plus intéressant d'organiser votre base entre données froides sur certains filegroups et données chaudes sur d'autres afin de faire des DBCC CHECKFILEGROUPS à différentes périodes (une fois la semaine pour données froide et une fois par jour pour les chaudes.
    En effet DBCC CHECKDB et DBCC CHECKFILEGROUPS lancent les commandes DBCC en parallèle (donc réduit le temps de traitement) ce que ne fait pas DBCC CHECKTABLE.

    Dans ce même ordre d'idée, il faut aussi orgeaiser vos sauvegardes par groupe de fichier avec exactement les même fréquences pour les même FILEGROUPS.

    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
    Membre émérite
    Homme Profil pro
    Consultant informatique
    Inscrit en
    Août 2006
    Messages
    730
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 63
    Localisation : France

    Informations professionnelles :
    Activité : Consultant informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Août 2006
    Messages : 730
    Par défaut
    Merci Frédéric,

    la séparation est faite entre données chaudes et froides (filegroups sur baie EMC D5, c'est sa config qui gère où elle mets ses filegroup, disque SSD ou pas)
    donc si on a du parallèle avec le checkfilegroup, cela me parait intéressant
    de plus synchroniser le backup des FG après le check est aussi une bonne idée...

    petite question subsidiaire, si l'on backupe après le check, a-t'on besoin de faire un contrôle sur le backup ?

  6. #6
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    22 002
    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 : 22 002
    Billets dans le blog
    6
    Par défaut
    Citation Envoyé par serge0934 Voir le message
    petite question subsidiaire, si l'on backupe après le check, a-t'on besoin de faire un contrôle sur le backup ?
    L'un n'exclus pas l'autre... DBCC CHECK relit les données sur le disque alors que le BACKUP avec CHECKSUM contrôle les pages lues qu'elles soient ne mémoire (dans le cache) ou pour celle qui n'y sont pas, sur le disque. En conclusion, un certain nombre de pages lues ne sont pas vérifiées du disque par le BACKUP !

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

  7. #7
    Expert confirmé
    Avatar de StringBuilder
    Homme Profil pro
    Chef de projets
    Inscrit en
    Février 2010
    Messages
    4 197
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Chef de projets
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2010
    Messages : 4 197
    Billets dans le blog
    1
    Par défaut
    Bonjour,

    Je me demande vaguement à quoi servent ces fonctions ?

    J'étais persuadé (visiblement à tort) qu'elles étaient réservées aux tentatives de réparation après caractrophe (disque défectueux, arrêt inopiné du serveur, etc.) et non pour de la maintenance quotidienne...

    En effet, le R dans SGBD-R, c'est pas justement la garantie que si la couche logicielle ne renvoie pas d'erreur, alors obligatoirement c'est que la partie physique est bonne ?
    A savoir que SQL Server ne vérifie-t-il pas lui-même quand il écrit des données sur le disque qu'elles sont bien écrites ?

    Mise à par de la vérification (et éventuellement de la tentative de récupération), que font ces fonctions ?

Discussions similaires

  1. [SQL Server]La liste de toutes les tables
    Par Husqvarna dans le forum Langage SQL
    Réponses: 6
    Dernier message: 29/09/2008, 16h21
  2. Mettre à false toutes les tables d'un projet
    Par tomm dans le forum Bases de données
    Réponses: 9
    Dernier message: 28/05/2006, 00h36
  3. [firebird 1.5] lister toutes les tables
    Par c0rwyn dans le forum SQL
    Réponses: 2
    Dernier message: 02/09/2004, 14h36
  4. Pb effacer toutes les tables d'une bd access
    Par madiam2004 dans le forum Bases de données
    Réponses: 5
    Dernier message: 30/05/2004, 15h24
  5. Sélection de toute les tables d'une base
    Par lord_paco dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 21/07/2003, 14h56

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