Vuelca la base de datos y la restauración puede llenarse de base de datos MSDB

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.

152354
Este artículo se ha archivado. Se ofrece "tal cual" y no se volverá a actualizar.
Síntomas
Error de SQL Executive tareas de y se devuelve el mensaje de error siguientes:
Error: 1105, gravedad: 17, estado 2
No se puede asignar espacio para objeto ' %. * s 'en la base de datos' %. * s ' porque el
' %. * s ' segmento está lleno. Si quedó sin espacio en Syslogs, vuelque el
registro de transacciones. De lo contrario, utilice ALTER DATABASE o sp_extendsegment para
aumentar el tamaño del segmento.
Las tareas basadas en SQL Executive que pueden fallar incluyen:
  1. Volcados programados y restauraciones.
  2. Las tareas se configuran para replicación.
  3. Alertas.
  4. Tareas programadas de Web.
Causa
La base de datos MSDB está lleno.
Solución
En SQL Server 6.5, las siguientes tablas se agregaron a la base de datos MSDB ayudan a mantener información de copia de seguridad:

sysbackupdetail: especifica un resumen de los dispositivos de copia de seguridad (volcar).
sysbackuphistory: especifica un resumen de cada operación de copia de seguridad (volcar).
sysrestoredetail: especifica un resumen de los dispositivos utilizados para restaurar (cargar).
sysrestorehistory: especifica un resumen de cada operación de restauración (cargar).

SQL Server mantiene automáticamente un historial de la copia de seguridad y restauración en línea completado en la base de datos MSDB. Esta información incluye quién realizó la copia de seguridad, cuando se realizó y qué dispositivos o archivos se almacena en.

El administrador del sistema tiene que supervisar estas tablas para eliminar entradas anteriores en estas tablas para asegurarse de que base de datos MSDB no se llene.

El siguiente procedimiento almacenado puede utilizarse para eliminar entradas de estas tablas del sistema en la base de datos MSDB.
use mastergosp_configure 'allow', 1goreconfigure with overridegodrop proc sp_cleanbackupRestore_log   go   create proc sp_cleanbackupRestore_log   @DeleteBeforeDate datetime   as   begin      Delete from msdb.dbo.sysbackupdetail where backup_id         in (Select backup_id from msdb.dbo.sysbackuphistory where backup_start <=   @DeleteBeforeDate)      Delete from msdb.dbo.sysbackuphistory where backup_start  <=   @DeleteBeforeDate      Delete from msdb.dbo.sysrestoredetail where restore_id         in (Select restore_id from msdb.dbo.sysrestorehistory where backup_start <=   @DeleteBeforeDate)      Delete from msdb.dbo.sysrestorehistory where backup_start <=   @DeleteBeforeDate   endgosp_configure 'allow', 0goreconfigure with override				
a continuación, tendrá que ejecutar el procedimiento almacenado recién creado. Por ejemplo, si desea eliminar todas las entradas en las tablas muestran en el procedimiento almacenado que ocurrieron antes de 2 de enero de 1997, podría ejecutar lo siguiente:
exec sp_cleanbackupRestore_log  '1/2/97'				
si desea automatizar el código, se puede utilizar algo similar al siguiente:
declare @DeleteBeforeDate datetime-- Modify the second parameter as necessary.-- It is currently set to delete anything older than 60 days.select  @DeleteBeforeDate = DATEADD(day, -60, getdate())select  @DeleteBeforeDate   exec sp_cleanbackupRestore_log  @DeleteBeforeDate				
Nota: si recibe un 1105 para objeto 'syslogs' por favor, vea el artículo siguiente en Microsoft Knowledge Base: 110139 - INF: Causes of SQL Transaction Log Filling Up.

Advertencia: este artículo se ha traducido automáticamente

Propiedades

Id. de artículo: 152354 - Última revisión: 02/03/2014 17:56:04 - Revisión: 4.0

  • Microsoft SQL Server 6.5 Standard Edition
  • kbnosurvey kbarchive kbmt kbprb KB152354 KbMtes
Comentarios