Как я могу настроить коэффициент заполнения индекса обратно на сервер по умолчанию?

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

Вопрос

У меня есть некоторые индексы, с которыми я играл на своем сервере Dev. Я установил коэффициент заполнения этих индексов, используя следующую команду:

alter index all on dbo.Table
rebuild with (fillfactor=80)

Это устанавливает и восстанавливает весь индекс на dbo.table. Теперь я хочу установить FillFactor Вернуться к дефолте сервера. Анкет Т.е. на уровне сервера все индексы установлены для того, чтобы иметь FillFactor 95. Я хочу, чтобы индексы снова использовали сервер по умолчанию, а не просто установили коэффициент заполнения 95.

Причина, по которой я хочу сделать это, заключается в том, что, если я списал на этот индекс и перемещаю его на новый сервер, он будет использовать коэффициент заполнения этого сервера по умолчанию, а не указанный 95.

Это было полезно?

Решение

Благодаря тестированию кажется, что вернуться к филлифактору по умолчанию по индексу, который вам нужно бросить и воссоздать его. Когда вы делаете ALTER INDEX ... REBUILD, любые неуточненные параметры останутся прежними в метаданных индекса, если иное не изменяется в ALTER INDEX командование

drop index IX_YourIndex
on YourTable
go

create index IX_YourIndex
on YourTable(YourKeyColumn)
go

Чтобы проверить это:

select
    name,
    fill_factor
from testdb.sys.indexes
where name = 'IX_YourIndex'

fill_factor должен быть настроен на 0 Чтобы обозначить, что он использует значение по умолчанию экземпляра. (Примечание: 0 предназначено для значения по умолчанию, даже если экземпляр, настроенный, коэффициент заполнения установлен на 95)

Лицензировано под: CC-BY-SA с атрибуция
Не связан с dba.stackexchange
scroll top