当前位置: 首页 > 图文教程 > 数据库 > MYSQL > 如何应用SQL Server DBCC避免堵塞

MYSQL
提高MySQL 查询效率的三个技巧
mysql同步复制搭建方法指南详细步骤
详解MySQL中DROP,TRUNCATE 和DELETE的区别实现mysql从零开始
MySQL Replace INTO的使用
mysql 分页优化解析
同时运行多个MySQL服务器的方法
mysql主从服务器同步心得体会
删除mysql数据库中的重复数据记录
mysql忘记密码的解决方法
mysql替换表中的字符串的sql语句
Lost connection to MySQL server during query的解决
mysql出现Error performing load command的解决方法
mysql中的“money”类型说明
mysql常见错误集锦
MYSQL administrator 使用
MYSQL初学者命令行使用指南
MySQL的Query Cache原理分析
linux下改良版本mysqldump来备份MYSQL数据库
mysql删除表中某一字段重复的记录
log引起的mysql不能启动的解决方法

MYSQL 中的 如何应用SQL Server DBCC避免堵塞


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-10-17   浏览: 61 ::
收藏到网摘: n/a

在危急时刻,数据库一致性检测(DBCC)可能是你最重要的工具。本文向你简单介绍DBCC的功能,它们包括:

检测表和相关目录的完整性。

检测整个数据库。

检测数据库页的完整性。

重建任何指定表中的目录。

你为何需要学习DBCC

如果你甚至还不知道为何使用DBCC,下面提供一些原因:

需要不断分割数据库页(表和目录),这可能会破坏分配。

目录可能遭到破坏,或效率降低。

SQL Server引擎有时会误解你的意图。

需要大量更新时,事情可能会很麻烦(记住,任何指定的更新实际为删除和插入)。

单个页面,虽然仍然“健康”,但可能会失去它们的最优存储足迹。

如何运行DBCC

你可以用两种方法运行DBCC:通过命令行窗口或查询分析器(Query Analyzer)窗口。如果你认为必要,你还可以确定其操作的时间。

DBCC命令包括以下扩展:

CheckDB:检测整个数据库的一致性,是检查数据库破坏的基本方法。

CheckTable:检测特定表的问题。

CheckAlloc:检测数据库的单个页面,包括表和目录。

Reindex:重建某个特定表的目录。

CacheStats:说明当前存储在内存缓存中的对象。

DropCleanBuffers:释放当前存储在缓冲区中的所有数据,这样你就可以继续进行检测,而不必使用前面的结果。

Errorlog:删除(缩短)当前日志。你可以考虑确定包含这个命令的操作的时间,一个星期左右运行一次。

FlushProclnDB:清除特定数据库的存储过程缓存(使用它的数据库id而不是名称)。使用下列代码找出id:

SELECT dbid FROM master.dbo.sysdatabases

WHERE name = '<name your poison>

IndexDefrag:减少目录分裂,但不给文件加锁,以便用户能够继续应用数据库。

CheckCatalog:检测特定数据库表及表之间的一致性(后者意味着使用外键等。)