首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >基于SharePoint的索引重建/重组的Ola Hallengren参数

基于SharePoint的索引重建/重组的Ola Hallengren参数
EN

Database Administration用户
提问于 2017-10-10 13:57:59
回答 1查看 1.7K关注 0票数 2

我计划使用Ola的IndexOptimize脚本来代替SharePoint 2013的前提碎片整理定时器作业。

有人用它来做这个吗?你用什么对词?怎么用?下面是我为OOOTB定时器任务通常处理的数据库设置的内容:

代码语言:javascript
复制
EXEC sp_msforeachdb 
'if exists(select 1 from [?].sys.objects where name=''proc_DefragmentIndices'')

EXECUTE dbo.IndexOptimize
@Databases = ''?'',
@FragmentationLow = NULL,
@FragmentationMedium = ''INDEX_REORGANIZE,INDEX_REBUILD_ONLINE,INDEX_REBUILD_OFFLINE'',
@FragmentationHigh = ''INDEX_REBUILD_ONLINE,INDEX_REBUILD_OFFLINE'',
@FragmentationLevel1 = 5,
@FragmentationLevel2 = 30

'
EN

回答 1

Database Administration用户

回答已采纳

发布于 2017-10-10 14:36:21

我只想更新统计数据。

我认为Jeff曾经说过:“重建索引只是更新统计数据的一种非常昂贵的方法”。

此外,运行更新统计信息可以同时获得索引和列的统计更新。重建索引只做索引本身,所以列的统计数据是陈旧的,除非它们达到"20%数据更改+ 500条记录“的标准来触发自动更新。在大桌子上,这可能是一段时间,而且不够频繁。

SQL2014和较低的默认样本大小不会并行,只有FULLSCAN才会并行。

SQL2016 -默认的样本大小也可以并行(并行统计更新)

我通常使用的语法(在本例中我们使用FULLSCAN StatisticsSample=100):

代码语言:javascript
复制
EXECUTE [dbo].[IndexOptimize] 
@Databases = 'USER_DATABASES',
@FragmentationLow = NULL,
@FragmentationMedium = NULL,
@FragmentationHigh = NULL,
@UpdateStatistics = 'ALL',
@StatisticsSample=100

这样,您就可以获得更新的统计信息(优化器将为此感谢您),而无需对物理索引结构维护进行所有I/O震荡和日志记录。

关于TF2371的附加读取,它允许以较低的百分比触发大型表上的统计更新。如果您使用的是SQL 2016,默认情况下将启用此功能。

https://support.microsoft.com/en-us/help/2754171/controlling-autostat-auto-update-statistics-behavior-in-sql-server

票数 3
EN
页面原文内容由Database Administration提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://dba.stackexchange.com/questions/188109

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档