我想弄清楚如何使用这个 IndexOptimize
我从 http://ola.hallengren.com/ 得到的存储过程仅针对单个表的索引运行。
当我运行以下查询时:
SELECT *
FROM sys.dm_db_index_physical_stats (DB_ID(N'database_name'),
OBJECT_ID(N'dbo.table_name'),
NULL, NULL , 'DETAILED');'
我在运行
IndexOptimize
之前和之后都得到了这个结果工作:http://cl.ly/image/472J160R1y2n
这是我正在尝试运行的内容:
EXECUTE dbo.IndexOptimize
@Databases = 'database_name',
@Indexes = 'database_name.dbo.table_name',
@FragmentationLow = NULL,
@FragmentationMedium = 'INDEX_REORGANIZE,INDEX_REBUILD_ONLINE',
@FragmentationHigh = 'INDEX_REBUILD_ONLINE',
@FragmentationLevel1 = 5,
@FragmentationLevel2 = 30'
查询完成,但它似乎对表的索引没有影响。我错过了什么吗?
最佳答案
您已选择仅允许在线重建具有 > 30% 碎片的索引。在线重建索引只是企业功能。您在使用 SQL Server Enterprise 吗?
关于SQL Server 2005 IndexOptimize SP 针对一个表的索引,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13075245/