1. 首页
  2. 数据库
  3. SQLServer
  4. SQL Server批量重建索引脚本

SQL Server批量重建索引脚本

上传者: 2025-05-26 20:52:04上传 RAR文件 616B 热度 2次

SQL Server 的索引重建脚本,挺适合手头数据量大的场景,尤其你遇到查询越来越慢的时候,基本就该考虑碎片问题了。这个压缩包里率是一个批量重建索引的脚本,逻辑清晰,直接跑就能用,不用你手动一个个表地去,省不少事。

索引碎片的可以用DBCC SHOWCONTIG或者sys.dm_db_index_physical_stats,看到碎片百分比高了(比如 30%以上),就该动手了。重建索引其实就像给硬盘碎片整理一下,数据页更紧凑,查询自然快。

离线和在线重建两种方式各有优缺点。你要是跑在非业务高峰期,用离线就行,快;如果业务敏感,在线重建会稳点,但耗资源,别在数据库吃紧时搞。

批量重建脚本,一般是遍历所有用户表,给每个表的索引来一遍ALTER INDEX ... REBUILDSQL 重建索引.txt文件应该就是这么干的,直接上存储过程一跑,全套搞定。

参数选项也别忽略,比如FILLFACTOR可以设置数据页的填充程度,控制新碎片的生成;WITH (STATISTICS_NORECOMPUTE = OFF)还能顺便更新下统计信息,查询计划更聪明。

建议你可以搞个定时任务,比如每周跑一遍索引维护。真要细致点,还可以加上REORGANIZE逻辑,碎片低就不重建,效率更高。

相关参考也挺全的,像DBCC DBREINDEX碎片整理这些资料都能补充下原理和方法。如果你还没搞过索引重建,这一套用下来就差不多上手了。

下载地址
用户评论