¿Cómo puedo configurar el factor de relleno de índice de nuevo al valor predeterminado del servidor?

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

Pregunta

Tengo algunos índices con los que estaba jugando en mi servidor de desarrollo. Establecí el factor de relleno de estos índices usando el siguiente comando:

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

Eso establece y reconstruye todo el índice en dbo.table. Ahora lo que quiero es establecer el FillFactor Volver al valor predeterminado del servidor. Es decir, a nivel del servidor, todos los índices deben tener un FillFactor de 95. Quiero que los índices usen el servidor predeterminado nuevamente, no solo tienen el factor de relleno establecido en 95.

La razón por la que quiero hacer esto es para que, si escribo este índice y lo muevo a un nuevo servidor, usará el factor de relleno predeterminado de ese servidor en lugar del 95 especificado.

¿Fue útil?

Solución

A través de las pruebas, parece que para volver al FillFactor predeterminado en un índice que necesita para soltarlo y recrearlo. Cuando haces un ALTER INDEX ... REBUILD, cualquier parámetros no especificados seguirá siendo los mismos en los metadatos del índice a menos que se cambie explícitamente en el ALTER INDEX dominio.

drop index IX_YourIndex
on YourTable
go

create index IX_YourIndex
on YourTable(YourKeyColumn)
go

Para verificar esto:

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

fill_factor debe estar configurado en 0 para denotar que está utilizando el valor predeterminado de la instancia. (Nota: 0 es para el valor predeterminado, incluso si el factor de relleno configurado de instancia está configurado en 95)

Licenciado bajo: CC-BY-SA con atribución
No afiliado a dba.stackexchange
scroll top