The Database Console Commands

  • November 2019
  • PDF

This document was uploaded by user and they confirmed that they have the permission to share it. If you are author or own the copyright of this book, please report to us by using this DMCA report form. Report DMCA


Overview

Download & View The Database Console Commands as PDF for free.

More details

  • Words: 635
  • Pages: 2
The Database Console Commands (DBCC) Those of you familiar with previous versions of SQL Server might know the DBCC statements as the Database Consistency Checker. All documentation now refers to them as the Database Console Commands, probably in deference to the fact that not all of them are used for database consistency checks. Running DBCC statements are an integral part of database maintenance. Some, such as DBCC CHECKDB, can be run on a scheduled basis (this is the one the wizard runs) as a preventative measure, and others, such as DBCC SHRINKFILE, you can choose to run when needed, table below lists some of the DBCC statements commonly used for database maintenance. Database Maintenance DBCC Statements

DBCC

Function

CHECKDB

Checks allocation and integrity of all DB objects

CHECKALLOC

Checks the consistency of disk space allocation

CHECKTABLE

Checks the integrity of the specified table and its indexes

SHRINKDATABASE

Attempts to shrink all data files in the specified database

SHRINKFILE

Attempts to shrink a specified data file

SHOWCONTIG

Displays fragmentation information on a table and its indexes

DBREINDEX

Rebuilds indexes for a specified table

INDEXDEFRAG

Defragments indexes for a specified table or view

Detecting and Resolving Database Corruption Several of the DBCC statements have the ability to detect and attempt to repair corruption in the database. Power failures or spikes, hardware glitches, or even internal SQL Server errors can cause this corruption. The primary validation DBCCs are the CHECK statements listed here: • • • • • • •

DBCC DBCC DBCC DBCC DBCC DBCC DBCC

CHECKDB CHECKALLOC CHECKCATALOG CHECKCONSTRAINTS CHECKFILEGROUP CHECKIDENT CHECKTABLE

Of these, DBCC CHECKDB is the most functional, as it checks all objects in the database. The others, with the exception of CHECKCATALOG and CHECKALLOC, check specific objects within the database. CHECKCATALOG checks for database consistency with the system catalog, and CHECKALLOC checks the consistency of disk space structures. The DBCC statements CHECKDB, CHECKALLOC, and CHECKTABLE have options to attempt to repair any problems they encounter. The CHECKDB statement is safest, as it also encompasses all the checks of the other two statements. It is, however, more time- and resource-consuming, so you might opt for using one of the others. For instance, if only allocation errors are being reported, running CHECKALLOC might be more efficient. The three repair options are as follows: • • •

REPAIR_FAST— Attempts minor

repairs that can be performed quickly with no chance of data loss. REPAIR_REBUILD— Performs all repairs of REPAIR_FAST and also performs index rebuilds. No loss of data will result. REPAIR_ALLOW_DATA_LOSS— Encompasses the repairs of the first two options and also includes allocation and deallocation of rows and pages for correcting errors, and deletion of corrupted text objects. This can result in data loss.

To speed up the processing of DBCC statements, The Enterprise and Developer editions of SQL Server can take advantage of multiple processors, and will perform parallel execution of DBCC statements. The DBCC CHECKDB statement performs a serial scan of the database, but parallel scans of multiple objects as it proceeds to the limit of the system "max degree of parallelism" option. This speeds up the operation substantially over previous versions. Another option is to run DBCC CHECKDB or DBCC CHECKTABLE with the NOINDEX option. This speeds the operation of the DBCC statement as it doesn't check the non-clustered indexes on user tables (system table indexes are always checked). Index corruption is not as critical an issue as data corruption, as no data is lost, and the index can always be dropped and re-created if necessary. Using DBCC to Set Trace Flags The DBCC statements DBCC TRACEON and DBCC TRACEOFF are used to enable and disable trace flags. Trace flags set various database characteristics and enable detailed reporting of various functions to help in troubleshooting. For example, DBCC TRACEON (1205) displays detailed deadlock information.

Related Documents

Database Commands
November 2019 20
Linux Console Commands
November 2019 26
Recovery Console Commands
October 2019 13