09年计算机三级辅导:SQLServer中DBCC语句归类

DBCC是SQL Server提供的一组控制台命令,功能很强大,掌握一些必要的语句,对操作数据库有不少帮助,所以决定整理一下,发现已有不少类似的整理,减少了不少工作,归类如下:

一、DBCC 帮助类命令
* DBCC HELP('?')
  查询所有的DBCC命令
* DBCC HELP('命令')
  查询指定的DBCC命令的语法说明
* DBCC USEROPTIONS
  返回当前连接的活动(设置)的SET选项

二、DBCC 检查验证类命令
* DBCC CHECKALLOG ('数据库名称')
  检查指定数据库的磁盘空间分配结构的一致性
* DBCC CHECKCATALOG ('数据库名称')
  检查指定数据库的系统表内和系统表间的一致性
* DBCC CHECKCONSTAINTS ('tablename')
  检查指定表上的指定约束或所有约束的完整性
* DBCC CHECKDB
  检查数据库中的所有对象的分配和结构完整性
* DBCC CHECKFILEGROUP
  检查指定文件组中所有表在当前数据库中的分配和结构完整性
* DBCC CHECKTABLE
  检查指定表或索引视图的数据、索引及test、ntest和image页的完整性
* DBCC CHECKIDENT
  检查指定的当前标识值
* DBCC SQLPERF(UMSSTATS) undocumented in BOL
  可以用来检查是否CPU使用达到瓶颈
  最关键的一个参考数据num runnable,表明当前有多少个线程再等待运行
  如果大于等于2,考虑CPU达到瓶颈

三、DBCC 维护类命令
* DBCC CLEANTABLE ('db_name', 'table_name')
  回收Alter table drop column语句删除可变长度列或text
* DBCC DBREINDEX
  重建指定数据库的一个或多个索引
* DBCC INDEXDEFRAG
  对表或视图上的索引和非聚集索引进行碎片整理
* DBCC PINTABLE (db_id,object_id)
  将表数据驻留在内存中
  查看哪些表驻留在内存的方法是:
  select objectproperty(object_id('tablename'), 'tableispinned')
* DBCC UNPINTABLE (db_id,object_id)
  撤消驻留在内存中的表
* DBCC SHRINKDATABASE(db_id,int)
  收缩指定数据库的数据文件和日志文件大小
* DBCC SHRINKFILE(file_name,int)
  收缩相关数据库的指定数据文件和日志文件大小

四、DBCC 性能调节命令
* DBCC dllname(FREE)
  sp_helpextendedproc 查看加载的扩展PROC
  在内存中卸载指定的扩展过程动态链接库(dll)
* DBCC DROPCLEANBUFFERS
  从缓冲池中删除所有缓冲区
* DBCC FREEPROCCACHE
  从过程缓冲区删除所有元素
* DBCC INPUTBUFFER
  显示从客户机发送到服务器的最后一个语句
* DBCC OPENTRAN (db_name)
  查询某个数据库执行时间最久的事务,由哪个程序拥有
* DBCC SHOW_STATISTICS
  显示指定表上的指定目标的当前分布统计信息
* DBCC SHOWCONTIG
  显示指定表的数据和索引的碎片信息
* DBCC SQLPERF
  (logspace) 查看各个DB的日志情况
  (iostats) 查看IO情况
  (threads) 查看线程消耗情况
  返回多种有用的统计信息
* DBCC CACHESTATS
  显示SQL Server 2000内存的统计信息
* DBCC CURSORSTATS
  显示SQL Server 2000游标的统计信息
* DBCC MEMORYSTATS
  显示SQL Server 2000内存是如何细分的
* DBCC SQLMGRSTATS
  显示缓冲中先读和预读准备的SQL语句

五、DBCC未公开的命令
* DBCC ERRLOG
  初始化SQL Server 2000的错误日志文件
* DBCC FLUSHPROCINDB (db_id)
  清除SQL Server 2000服务器内存中的某个数据库的存储过程缓存内容
* DBCC BUFFER (db_name,object_name,int(缓冲区个数))
  显示缓冲区的头部信息和页面信息
* DBCC DBINFO (db_name)
  显示数据库的结构信息
* DBCC DBTABLE
  显示管理数据的表(数据字典)信息
* DBCC IND (db_name,table_name,index_id)
  查看某个索引使用的页面信息
* DBCC REBUILDLOG
  重建SQL Server 2000事务日志文件
* DBCC LOG (db_name,3) (-1--4)
  查看某个数据库使用的事物日志信息
* DBCC PAGE
  查看某个数据库数据页面信息
* DBCC PROCBUF
  显示过程缓冲池中的缓冲区头和存储过程头
* DBCC PRTIPAGE
  查看某个索引页面的每行指向的页面号
* DBCC PSS (user,spid,1)
  显示当前连接到SQL Server 2000服务器的进程信息
* DBCC RESOURCE
  显示服务器当前使用的资源情况
* DBCC TAB (db_id,object_id)
  显示数据页面的结构

六、DBCC跟踪标记
  跟踪标记用于临时设置服务器的特定特征或关闭特定行为,常用于诊断性能问题或调试存储过程或复杂的计算机系统
* DBCC TRACEON (3604)
  打开跟踪标记
* DBCC TRACEOFF
  关闭跟踪标记
* DBCC TRACESTATS
  查看跟踪标记状态

七、使用 DBCC 结果集输出
  许多 DBCC 命令可以产生表格格式的输出(使用 WITH TABLERESULTS 选项)。该信息可装载到表中以便将来使用。以下显示一个示例脚本:
  CREATE TABLE DBCCResult (
  DBCCFlag INT,
  Result INT
  )
  INSERT INTO DBCCResult
  EXEC (’DBCC TRACESTATUS (-1) WITH NO_INFOMSGS’)
  SELECT *
  FROM DBCCResult

八、官方使用DBCC的建议
  1、在系统使用率较低时运行 CHECKDB。
  2、请确保未同时执行其它磁盘 I/O 操作,例如磁盘备份。
  3、将 tempdb 放到单独的磁盘系统或快速磁盘子系统中。
  4、允许 tempdb 在驱动器上有足够的扩展空间。 使用带有 ESTIMATE ONLY 的 DBCC估计 tempdb 将需要多少空间。
  5、避免运行占用大量 CPU 的查询或批处理作业。
  6、在 DBCC 命令运行时,减少活动事务。
  7、使用 NO_INFOMSGS 选项显著减少处理和 tempdb 的使用。
  8、考虑使用带有 PHYSICAL_ONLY 选项的 DBCC CHECKDB 来检查页和记录首部的物理结构。当硬件导致的错误被置疑时,这个操作将执行快速检查。

 

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/10527166/viewspace-704888/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/10527166/viewspace-704888/

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
毕业设计,基于SpringBoot+Vue+MySQL开发的影城管理系统,源码+数据库+论文答辩+毕业论文+视频演示 随着现在网络的快速发展,网上管理系统也逐渐快速发展起来,网上管理模式很快融入到了许多生活之,随之就产生了“小徐影城管理系统”,这样就让小徐影城管理系统更加方便简单。 对于本小徐影城管理系统的设计来说,系统开发主要是采用java语言技术,在整个系统的设计应用MySQL数据库来完成数据存储,具体根据小徐影城管理系统的现状来进行开发的,具体根据现实的需求来实现小徐影城管理系统网络化的管理,各类信息有序地进行存储,进入小徐影城管理系统页面之后,方可开始操作主控界面,主要功能包括管理员:首页、个人心、用户管理、电影类型管理、放映厅管理、电影信息管理、购票统计管理、系统管理、订单管理,用户前台;首页、电影信息、电影资讯、个人心、后台管理、在线客服等功能。 本论文主要讲述了小徐影城管理系统开发背景,该系统它主要是对需求分析和功能需求做了介绍,并且对系统做了详细的测试和总结。具体从业务流程、数据库设计和系统结构等多方面的问题。望能利用先进的计算机技术和网络技术来改变目前的小徐影城管理系统状况,提高管理效率。 关键词:小徐影城管理系统;Spring Boot框架,MySQL数据库
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值