如何重建MS SQL中的全部索引(mssql重建所有索引)

数据库的一个重要的部分是索引,这是一种为数据表创建的特殊类型的索引,可以改善查询性能和内存占用量。微软的SQL服务器允许用户重建所有的索引,可以改善索引的性能和数据库的性能。下面介绍如何重建MS SQL中的全部索引:

首先,我们需要检查MS SQL数据库中有多少索引,这可以通过下面的查询来做:

“`SQL

use{database name};

select * from sys.indexes


上面这个查询会返回当前数据库中所有表中的所有索引。如果只想查看一个特定表中的索引,可以使用下面的查询:

```SQL
use{database name};
select * from sys.indexes where object_id=object_id(‘table name’)

接着,使用DBCC DBREINDEX命令重建所有的索引。这个命令参数是表的名称,也可以是索引的名称,也可以是类型为“ ic”的索引ID(全局唯一标识符):

“`SQL

–For all the indexes of a particular table

dbcc dbreindex (table name)


```SQL
--For all the indexes of a particular index
dbcc dbreindex (index name)

“`SQL

–To rebuild a specific index

dbcc dbreindex ({ic index id},table name)


最后,使用DBCCINDEXDEFRAG命令,可以轻松整理索引碎片:

```SQL
dbcc indexdefrag (table name,{ic index id})

此命令只适用于MS SQL服务器2000和2005,执行此命令可以重构索引,其中垃圾收集��是一个紧密而有效的索引。

重建MS SQL中的全部索引是一个棘手的任务,但通过上面的步骤,可以轻松的重建索引,提高数据库性能、减少索引碎片和维护索引质量。


数据运维技术 » 如何重建MS SQL中的全部索引(mssql重建所有索引)