Nota
Después de aplicar esta revisión, debe habilitar la marca de seguimiento 1800 como parámetro de inicio en todos los servidores o réplicas que tengan un tamaño de sector físico de 512 bytes y reiniciarlos para que esta revisión funcione correctamente.
Síntomas
Tenga en cuenta el siguiente escenario:
Habilita los grupos de disponibilidad AlwaysOn o la característica Logshipping en Microsoft SQL Server.
Los discos que almacenan los archivos de registro de la réplica principal y secundaria en un grupo de disponibilidad AlwaysOn (AG) tienen diferentes tamaños de sector. O bien, en entornos de Logshipping, los discos que almacenan los archivos de registro para los servidores primarios y secundarios de Logshipping tienen diferentes tamaños de sector. Por ejemplo:
- El archivo de registro de réplica principal se encuentra en un disco con un tamaño de sector de 512 bytes. Sin embargo, el archivo de registro de réplica secundaria se encuentra en un disco con un tamaño de sector de 4 kilobytes (KB).
- El archivo de registro de réplica principal se encuentra en un sistema local local que tiene un tamaño de sector de 512 bytes. Sin embargo, la réplica secundaria se encuentra en un disco de almacenamiento de Windows Azure que tiene un tamaño de sector de 4 kilobytes (KB).
En esta situación, el mensaje de error siguiente se registra en el registro de errores de SQL Server. El mensaje de error puede continuar durante un tiempo después del reinicio si ha habido registros que no se aplicaron a la secundaria antes de reiniciar el servidor.
Nota
Ha habido X E/S de registro desalineadas que han requerido volver a la E/S sincrónica. La OI actual está archivada ...
Además, la sincronización de AG o Logshipping se ejecuta muy lentamente debido a las E/S sincrónicas. Si la réplica secundaria está en Windows Azure Storage, el proceso de sincronización tarda mucho más tiempo del esperado en finalizar.
Nota: Este problema se produce al usar tanto las nuevas unidades con un tamaño de sector de 4 KB como las antiguas con un tamaño de sector de 512 bytes. Para obtener más información acerca de las nuevas unidades, consulte SQL Server: nuevas unidades que usan el tamaño del sector 4K y el tamaño del sector SQL Server–Espacios de almacenamiento/VHDx y 4K.
Resolución
Este problema se corrigió por primera vez en la siguiente actualización acumulativa de SQL Server.
Actualización acumulativa 38 para SQL Server 2014 /en-us/help/3011055
Actualización acumulativa 3 para SQL Server 2012 SP2 /en-us/help/3002049
Actualización acumulativa 38 para SQL Server 2012 SP1 /en-us/help/3002044
Después de aplicar la revisión y habilitar la marca de seguimiento 1800 como parámetro de inicio en todas las réplicas de servidores que se ejecutan en un disco con un tamaño de sector de 512 bytes, observa un pequeño aumento en el tamaño de los siguientes archivos:
- Archivo de registro de transacciones
- Copias de seguridad de registros
Además, observa que los mensajes siguientes se registran en el registro de errores de SQL Server del servidor principal:
Nota
La cola del registro de la base de datos '<nombre> de base de datos' se está reescribiendo para que coincida con el nuevo tamaño del sector de 4096 bytes
Este es un mensaje informativo que se puede ignorar de forma segura.
Acerca de las actualizaciones acumulativas para SQL Server
Cada nueva actualización acumulativa para SQL Server contiene todas las revisiones y correcciones de seguridad que se incluyeron con la actualización acumulativa anterior. Consulte las actualizaciones acumulativas más recientes para SQL Server:
- Actualización acumulativa más reciente para SQL Server 2014
- Actualización acumulativa más reciente para SQL Server 2012 SP2
- Actualización acumulativa más reciente para SQL Server 2012 SP1
Solución alternativa
Para solucionar este problema, mueva el archivo de registro de transacciones en el destino a una unidad que tenga Bytes por sector físico establecido en 512 bytes.
Estado
Microsoft ha confirmado que se trata de un problema de los productos de Microsoft que se enumeran en la sección "Aplicable a".
Más información
Como práctica recomendada, trate de asegurarse de que todos los discos de todas las réplicas (al menos todos los discos que hospedan archivos de registro) tengan el mismo tamaño de sector. En entornos mixtos, donde la entidad secundaria tiene un sector físico de 512 bytes y la principal tiene un tamaño de sector de 4 KB, TF 1800 debe usarse como marca de inicio en todos los servidores o réplicas que tengan un tamaño de sector físico de 512 bytes y se hayan reiniciado. Esto garantiza que el formato de creación de registros en curso utiliza un tamaño de sector de 4 KB.
Para obtener más información acerca de cómo funciona SQL Server con sectores de mayor tamaño, consulte el artículo siguiente en el blog de soporte técnico:
SQL Server: espacios de almacenamiento/VHDx y tamaño de sector 4K
Puede utilizar la utilidad de símbolo del sistema Fsutil para determinar el valor de Bytes por sector físico . Si este parámetro no está visible en la salida, debe aplicar la revisión especificada en el artículo de KB 982018 .
Para comprobar el tipo de unidad que tienes, sigue estos pasos:
Ejecute el comando siguiente en un símbolo del sistema con privilegios elevados:
fsutil fsinfo ntfsinfo x: Nota El marcador de posición x representa la unidad que está comprobando.Use los valores de Bytes por sector y Bytes por sector físico para determinar el tipo de unidad que tiene. Para ello, utilice la siguiente tabla:
Valor "Bytes por sector" Valor "Bytes por sector físico" Tipo de unidad 4096 4096 4K nativo 512 4096 Formato avanzado (también conocido como 512E) 512 512 Nativo de 512 bytes