Se registra un mensaje informativo de 9017 al iniciar una instancia de SQL Server o restaurar o adjuntar una base de datos

Seleccione idioma Seleccione idioma
Id. de artículo: 2882905 - Ver los productos a los que se aplica este artículo
Expandir todo | Contraer todo

En esta página

Síntomas

Cuando se inicia una instancia de Microsoft SQL Server o restaurar o adjuntar una base de datos, se registra un mensaje informativo 9017 similar al siguiente en el registro de errores de SQL Server:

Base de datos dbName tiene más de n archivos de registro virtuales que es excesivo. Hay demasiados archivos de registro virtuales pueden causar inicio largo y los tiempos de backup. Considere la posibilidad de reducir el registro y el uso de un incremento de crecimiento para reducir el número de archivos de registro virtuales.

Hay demasiados archivos de registro virtuales pueden afectar negativamente el tiempo de recuperación de la base de datos.

Además, si utiliza tecnologías de replicación o espejado de la base de datos en su entorno, puede observar problemas de rendimiento con estas tecnologías.

Causa

Este problema se produce cuando se especifican valores pequeños para el Parámetro de crecimiento el archivo de registro.

El motor de base de datos de SQL Server se divide cada archivo de registro físico internamente en varios archivos de registro virtuales (VLF). SQL Server 2008 R2 Service Pack 2 y versiones posteriores se introdujeron un nuevo mensaje (9017) que se registra cuando se inicia (debido a que el inicio de una instancia de SQL Server o debido a adjuntar o restaurar la base de datos) de una base de datos y tiene más de 1.000 VLF en SQL Server 2008 R2 o tiene más de 10.000 VLF en SQL Server 2012.

NotaEn SQL Server 2012, aunque este mensaje se registra cuando la base de datos tiene 10.000 VLF, el mensaje real que aparece en el registro de errores incorrectamente indica "1000 VLF." Básicamente, la advertencia se produce después de 10.000 VLF. Sin embargo, el mensaje informa de 1.000 VLF. Este problema se corregirá en una versión futura.

Para obtener más información acerca de cómo el mayor número de VLF puede llevar a problemas de rendimiento en la duplicación o configuraciones de creación de reflejo de la base de datos, consulte la sección "Más información".

Solución

Para resolver este problema, siga estos pasos:
  1. Reducir el registro de transacciones mediante el uso de DBCC SHRINKDB o mediante SQL Server Management Studio.
  2. Aumentar el tamaño del archivo de registro de transacciones a un valor mayor para evitar crecimientos auto frecuente. Para obtener más información, consulte el siguiente tema en el sitio Web de libros en pantalla de SQL Server:

    http://msdn.Microsoft.com/en-us/library/ms365418.aspx#AddOrEnlarge
  3. Aumentar el Parámetro de crecimiento a un valor mayor de lo que está actualmente configurado. Esto debe basarse en la actividad de la base de datos y con qué frecuencia está aumentando su archivo de registro.

Además, se recomienda que considere la posibilidad de instalar las revisiones siguientes, según la versión de SQL Server que ejecutan actualmente:


Más información

Cómo comprobar el número de segmentos VLF en una base de datos

Encontrará el número de segmentos VLF en una base de datos por encontrar la diferencia entre los primeros y los últimos números de secuencia de registro (LSNs) de las copias de seguridad del registro de transacciones para la base de datos.

Puede encontrar el LSN de la copia de seguridad del registro de transacciones comprobando el registro de errores de SQL Server para un mensaje similar al siguiente:

{Registro realizó la copia. Base de datos: nombre_de_la_bd, creation_date_(time): fecha(hora), primer LSN: 1: 5068:70, último LSN: 1: 5108:1, el número de dispositivos de volcado: 1, información del dispositivo: (archivo = 1, tipo = disco: {'C:\folder\logbackup1.trn'}). Esto es sólo un mensaje informativo. Se requiere ninguna acción de usuario.

NotaEn este mensaje, el LSN del registro de transacciones es1. (Es el primer número antes de los primeros dos puntos en "LSN: 1:5068:70.")

Para ello, siga estos pasos:
  1. Encontrar el LSN de la copia de seguridad del registro de earliesttransaction para la base de datos en el registro de errores de SQL (por ejemplo, LSN: 1:5108:1).
  2. Encontrar el LSN más reciente de la copia de seguridad del registro de transacciones en el registro de errores de SQL (por ejemplo, LSN:10, 235: 5108: 1).
  3. El número de segmentos VLF es la diferencia entre el LSN más reciente y al LSN (en este caso, es 10,235-1 = 10.234).

El efecto de un montón de VLF de replicación

Demasiados archivos de registro pueden afectar a la replicación porque el proceso lector del registro debe analizar cada archivo de registro virtual para las transacciones que están marcadas para duplicación. Este comportamiento puede ver por el rendimiento del procedimiento sp_replcmds almacena el seguimiento. El lector del registro proceso utiliza el sp_replcmds almacena el procedimiento para examinar los archivos de registro virtuales y leer las transacciones marcadas para duplicación. Para obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:

949523 La latencia de la replicación transaccional es alta en SQL Server 2005 cuando el valor de la propiedad de "Tamaño inicial" y el valor de la propiedad de crecimiento automático son pequeños

El efecto de un montón de VLF en el reflejo de la base de datos

Hay demasiados archivos de registro también pueden afectar a la creación de reflejo de base de datos. Para obtener más información, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:

2455009REVISIÓN: Un rendimiento lento al recuperar una base de datos si hay muchos VLF dentro del registro de transacciones en SQL Server 2005, SQL Server 2008 o SQL Server 2008 R2

Referencias

Para obtener más información, consulte los siguientes temas en el sitio Web de Microsoft Developer Network (MSDN):

Reducir el registro de transacciones

Factores que pueden retrasar el truncamiento de logs

Truncamiento del registro de transacciones

Arquitectura lógica del registro de transacciones

Arquitectura física del registro de transacciones


Propiedades

Id. de artículo: 2882905 - Última revisión: miércoles, 11 de septiembre de 2013 - Versión: 1.0
La información de este artículo se refiere a:
  • Microsoft SQL Server 2012 Developer
  • Microsoft SQL Server 2012 Enterprise
  • Microsoft SQL Server 2012 Standard
  • Microsoft SQL Server 2008 R2 Datacenter
  • Microsoft SQL Server 2008 R2 Developer
  • Microsoft SQL Server 2008 R2 Enterprise
  • Microsoft SQL Server 2008 R2 Standard
  • Microsoft SQL Server 2008 Developer
  • Microsoft SQL Server 2008 Enterprise
  • Microsoft SQL Server 2008 Standard
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Standard Edition
Palabras clave: 
kbexpertiseinter kbprb kbsurveynew kbmt KB2882905 KbMtes
Traducción automática
IMPORTANTE: Este artículo ha sido traducido por un software de traducción automática de Microsoft (http://support.microsoft.com/gp/mtdetails) en lugar de un traductor humano. Microsoft le ofrece artículos traducidos por un traductor humano y artículos traducidos automáticamente para que tenga acceso en su propio idioma a todos los artículos de nuestra base de conocimientos (Knowledge Base). Sin embargo, los artículos traducidos automáticamente pueden contener errores en el vocabulario, la sintaxis o la gramática, como los que un extranjero podría cometer al hablar el idioma. Microsoft no se hace responsable de cualquier imprecisión, error o daño ocasionado por una mala traducción del contenido o como consecuencia de su utilización por nuestros clientes. Microsoft suele actualizar el software de traducción frecuentemente.
Haga clic aquí para ver el artículo original (en inglés): 2882905

Enviar comentarios

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com