DBCC Commands:
DBCC commands are most useful for
performance and troubleshooting.
The DBCC Commands are used in Maintenance, Informational use, Validation on a database, index, or file group. Theses commands are helpful to check physical and logical consistency of database. Some DBCC statements fix errors automatically. Here I am showing some commands that are frequently used.
The DBCC Commands are used in Maintenance, Informational use, Validation on a database, index, or file group. Theses commands are helpful to check physical and logical consistency of database. Some DBCC statements fix errors automatically. Here I am showing some commands that are frequently used.
| 
Command | 
Description | 
Level | 
When to
  Check | 
| 
DBCC SQLPERF(logspace) | 
--To see transaction log size of each database on
  Server. | 
Server Level | 
Weekly | 
| 
DBCC SHOWFILESTATS | 
--Show Total Extents
  and used extents for database | 
Database Level | 
Weekly | 
| 
DBCC CHECKCATALOG | 
--Checks for
  catalog/tables consistency within the specified database | 
Database Level | 
Weekly | 
| 
DBCC CHECKCONSTRAINTS | 
--Checks the integrity of a
  specified constraint or all constraints on a specified table in the current
  database | 
Database Level | 
When you suspect that there
  are rows in your tables that do not meet the constraints/rules. | 
| 
DBCC CHECKALLOC | 
-- checks page usage and
  allocation in the database. | 
Database Level | 
 if allocation errors are
  found for the database | 
| 
DBCC CHECKTABLE(tablename) | 
--It verifies index and data
  page links, index sort order, page pointers, index pointers, data page
  integrity, and page offsets on table. | 
Table level | 
Whenever required. | 
| 
DBCC CHECKIDENT(tablename) | 
--Checking identity
  information,return current identity value of specified table | 
Table Level | 
Whenever required. | 
| 
DBCC DBREINDEX(tablename) | 
-- rebuilds an index for a table
  or all indexes defined for a table. | 
Table level | 
 (should not used rather use ALTER INDEX
  command) | 
| 
DBCC INDEXDEFRAG (databasename, tablename,indexname) | 
--defragment clustered and
  nonclustered indexes on tables and views | 
Table/View Level | 
 (Should not use, Replacement is ALTER INDEX
  ... REORGANISE) | 
| 
SELECT
  request_id  
FROM sys.dm_exec_requests  
WHERE session_id = @@spid; | 
--returns request_id | ||
| 
DBCC INPUTBUFFER(sessionid) | 
--to view the last statement sent by the client
  connection to SQL Server | 
Database level | 
Whenever required | 
| 
DBCC SHRINKDATABASE(databasename) | 
--Shrinks the size of the data and log files in the
  specified database | 
Database Level | 
Avoid executing this command
  during busy periods in production | 
| 
DBCC SHRINKFILE(file_id) 
Use  
exec sp_helpfile 
 to know filename,fileid,filegroup,size | 
--allows you to shrink the size of individual data
  and log files | 
Database level | 
Avoid, as in most cases the
  database will just regrow and shrinking data files causes fragmentation. | 
| 
DBCC TRACEOFF | 
--used to disable tracing | 
Server Level | |
| 
DBCC TRACEON | 
--used to enable tracing | 
Server Level | |
| 
DBCC TRACESTATUS | 
--used to know trace status with
  TraceFlag,Status,Global,Session | 
Server Level | |
| 
DBCC USEROPTIONS | 
--Returns the SET options active
  (set) for the current connection | 
Server Level | 
Whenever required | 
 
 
No comments:
Post a Comment
Please leave a comment for this post