Microsoft SQL Server
DBCC
Recherche…
Commandes de maintenance DBCC
Les commandes DBCC permettent à l'utilisateur de conserver de l'espace dans la base de données, de nettoyer les caches, de réduire les bases de données et les tables.
Les exemples sont:
DBCC DROPCLEANBUFFERS
Supprime tous les tampons propres du pool de mémoire tampon et les objets columnstore du pool d'objets columnstore.
DBCC FREEPROCCACHE
-- or
DBCC FREEPROCCACHE (0x060006001ECA270EC0215D05000000000000000000000000);
Supprime toutes les requêtes SQL dans le cache du plan. Chaque nouveau plan sera recompilé: vous pouvez spécifier un descripteur de plan, un descripteur de requête pour nettoyer les plans du plan de requête ou de l'instruction SQL spécifique.
DBCC FREESYSTEMCACHE ('ALL', myresourcepool);
-- or
DBCC FREESYSTEMCACHE;
Nettoie toutes les entrées mises en cache créées par le système. Il peut nettoyer les entrées o = dans tout ou partie du pool de ressources spécifié ( myresourcepool dans l'exemple ci-dessus)
DBCC FLUSHAUTHCACHE
Vide le cache d'authentification de la base de données contenant des informations sur les connexions et les règles de pare-feu.
DBCC SHRINKDATABASE (MyDB [, 10]);
Réduit la base de données MyDB à 10%. Le deuxième paramètre est facultatif. Vous pouvez utiliser l'ID de base de données au lieu du nom.
DBCC SHRINKFILE (DataFile1, 7);
Réduit le fichier de données nommé DataFile1 dans la base de données en cours. La taille de la cible est de 7 Mo (ce paramètre est facultatif).
DBCC CLEANTABLE (AdventureWorks2012,'Production.Document', 0)
Récupère un espace de la table spécifiée
Déclarations de validation DBCC
Les commandes DBCC permettent à l'utilisateur de valider l'état de la base de données.
ALTER TABLE Table1 WITH NOCHECK ADD CONSTRAINT chkTab1 CHECK (Col1 > 100);
GO
DBCC CHECKCONSTRAINTS(Table1);
--OR
DBCC CHECKCONSTRAINTS ('Table1.chkTable1');
La contrainte de vérification est ajoutée avec les options de vérification, elle ne sera donc pas vérifiée sur les données existantes. DBCC déclenchera une vérification des contraintes.
Les commandes suivantes de DBCC vérifient l’intégrité de la base de données, de la table ou du catalogue:
DBCC CHECKTABLE tablename1 | tableid
DBCC CHECKDB databasename1 | dbid
DBCC CHECKFILEGROUP filegroup_name | filegroup_id | 0
DBCC CHECKCATALOG databasename1 | database_id1 | 0
Déclarations d'informations DBCC
Les commandes DBCC peuvent afficher des informations sur les objets de base de données.
DBCC PROCCACHE
Affiche les informations dans un format de table à propos du cache de procédure.
DBCC OUTPUTBUFFER ( session_id [ , request_id ])
Renvoie le tampon de sortie en cours au format hexadécimal et ASCII pour l'identifiant session_id spécifié (et l'ID de demande facultatif).
DBCC INPUTBUFFER ( session_id [ , request_id ])
Affiche la dernière instruction envoyée par un client à une instance de Microsoft SQL Server.
DBCC SHOW_STATISTICS ( table_or_indexed_view_name , column_statistic_or_index_name)
Commandes de trace DBCC
Les indicateurs de trace dans SQL Server sont utilisés pour modifier le comportement de SQL Server, activer / désactiver certaines fonctionnalités. Les commandes DBCC peuvent contrôler les indicateurs de trace:
L'exemple suivant active l'indicateur de trace 3205 globalement et 3206 pour la session en cours:
DBCC TRACEON (3205, -1);
DBCC TRACEON (3206);
L'exemple suivant désactive l'indicateur de trace 3205 globalement et 3206 pour la session en cours:
DBCC TRACEON (3205, -1);
DBCC TRACEON (3206);
L'exemple suivant affiche l'état des indicateurs de trace 2528 et 3205:
DBCC TRACESTATUS (2528, 3205);
Déclaration DBCC
Les instructions DBCC agissent en tant que commandes de la console de base de données pour SQL Server. Pour obtenir les informations de syntaxe pour la commande DBCC spécifiée, utilisez l'instruction DBCC HELP (...).
L'exemple suivant retourne toutes les instructions DBCC pour lesquelles l'aide est disponible:
DBCC HELP ('?');
L'exemple suivant renvoie des options pour l'instruction DBCC CHECKDB:
DBCC HELP ('CHECKDB');