¿SQL Server elimina archivos de registro de errores antiguos?

12

Sé que puedo cambiar el registro de errores actual fácilmente ejecutando sp_cycle_errorlog, pero me pregunto si SQL Server alguna vez eliminará los archivos de registro de errores antiguos / archivados. Parece que no puedo encontrar una respuesta a esto en ningún lado ...

tuseau
fuente

Respuestas:

19

En SQL Server Management Studio, en Object Explorer> Management, hay una configuración si hace clic derecho SQL Server Logsy selecciona Configure. Puede especificar cuántos archivos de registro desea conservar. Una vez que alcanza ese número, comenzará a eliminar los viejos.

ingrese la descripción de la imagen aquí

Kenneth Fisher
fuente
8

Reinicie SQL Server 7 veces. Verá que todavía tiene solo 7 ERRORLOG*archivos (según la versión). Este es el archivo de registro actual y los 6 archivos de registro más recientes.

Nota: Es posible que deba cambiar 7 a otra cosa, en caso de que cambie la cantidad de registros de errores que mantiene SQL Server . El máximo, creo, es 99. Pero no importa cuál sea su configuración actual, eventualmente reciclará y purgará los archivos antiguos.

Probé esto y, si desmarca la casilla que dice:

☐ Limite la cantidad de archivos de registro de errores antes de reciclarlos

... lo que implica (al menos para mí) mantener todos los archivos de registro , seguirá conservando solo el archivo de registro de errores actual más 6 copias de seguridad . Si ha cambiado la clave de registro que @RLF señaló , la configuración de la clave de registro se anula (como si no hubiera desmarcado la casilla), pero aún estará limitado a una cierta cantidad de archivos de registro de errores de copia de seguridad entre 6 y 99.

Entonces, la respuesta corta es: sí, en todos los casos, SQL Server eventualmente eliminará los viejos archivos de registro de errores.

Aaron Bertrand
fuente
7

SQL Server recicla los registros de errores automáticamente, siempre que lo configure correctamente.

Ver http://msdn.microsoft.com/en-us/library/ms177285.aspx . He copiado los puntos más destacados a continuación:

En el Explorador de objetos, expanda la instancia de SQL Server, expanda Administración, haga clic con el botón derecho en Registros de SQL Server y luego haga clic en Configurar.

En el cuadro de diálogo Configurar registros de errores de SQL Server, elija entre las siguientes opciones.

  • Limite el número de archivos de registro de errores antes de que se reciclen

    • Marque para limitar el número de registros de errores creados antes de que se reciclen. Se crea un nuevo registro de errores cada vez que se inicia una instancia de SQL Server. SQL Server retiene las copias de seguridad de los seis registros anteriores, a menos que marque esta opción y especifique un número máximo diferente de archivos de registro de errores a continuación.
  • Número máximo de archivos de registro de errores

    • Especifique el número máximo de archivos de registro de errores creados antes de que se reciclen. El valor predeterminado es 6, que es la cantidad de registros de respaldo anteriores que SQL Server retiene antes de reciclarlos.
Max Vernon
fuente
2

Sí, hay una configuración para cuántos registros de errores mantener.

Se puede encontrar en la clave de registro en:

HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\MSSQLServer\MSSQLServer\NumErrorLogs

Es posible que deba agregar esta clave.

RLF
fuente
1
Tenga en cuenta que debe reemplazar la primera instancia de MSSQLServercon su ID de instancia si es una instancia con nombre (por ejemplo, MSSQL12.SQL2014para mi instancia con nombre de 2014 con nombre SQL2014).
Aaron Bertrand