Nota:
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
En este tema se describen las posibles respuestas a un registro de transacciones completo y se sugiere cómo evitarlo en el futuro. Cuando el registro de transacciones se llena, el motor de base de datos de SQL Server genera un error 9002. El registro puede rellenarse cuando la base de datos está en línea o en recuperación. Si el registro se llena mientras la base de datos está en línea, la base de datos permanece en línea, pero solo se puede leer, no se puede actualizar. Si el log se llena durante la recuperación, el motor de la base de datos marca la base de datos como RESOURCE PENDING. En ambos casos, es necesaria la intervención del usuario para proporcionar espacio de registro.
Respuesta a un registro de transacciones completo
La respuesta adecuada a un registro de transacciones completo depende en parte de qué condición o condiciones hizo que el registro se rellenara. Para detectar lo que impide el truncamiento del registro en un caso determinado, use las columnas log_reuse_wait y log_reuse_wait_desc de la vista de catálogo sys.database . Para obtener más información, vea sys.databases (Transact-SQL). Para obtener descripciones de factores que pueden retrasar el truncamiento del registro, vea El registro de transacciones (SQL Server).
Importante
Si la base de datos estaba en recuperación cuando se produjo el error 9002, después de resolver el problema, recupere la base de datos mediante ALTER DATABASE database_name SET ONLINE.
Entre las alternativas para responder a un registro de transacciones completo se incluyen:
Copia de seguridad del registro.
Liberar espacio en disco para que el registro pueda crecer automáticamente.
Mover el archivo de registro a una unidad de disco con espacio suficiente.
Aumentar el tamaño de un archivo de registro.
Agregar un archivo de registro en otro disco.
Completar o abortar una transacción prolongada.
Estas alternativas se describen en las secciones siguientes. Elija una respuesta que se adapte mejor a su situación.
Copia de seguridad del registro
En el modelo de recuperación completa o en el modelo de recuperación con registro masivo, si el registro de transacciones no se ha respaldado recientemente, la copia de seguridad podría ser lo que impide la truncación del registro. Si nunca hizo una copia de seguridad del registro, debe crear dos copias de seguridad de registros para que el Motor de base de datos pueda truncar el registro en el punto de la última copia de seguridad. El truncamiento del registro libera espacio para nuevas entradas del registro. Para evitar que el registro se vuelva a llenar, realice copias de seguridad con frecuencia.
Para crear una copia de seguridad del registro de transacciones
Importante
Si la base de datos está dañada, consulte Tail-Log Copias de seguridad (SQL Server).
Liberar espacio en disco
Puede liberar espacio en la unidad de disco que contiene el archivo de registro de transacciones de la base de datos eliminando o desplazando otros archivos. La liberación de espacio de disco permite que el sistema de recuperación amplíe automáticamente el archivo de registro.
Mover el archivo de registro a un disco diferente
Si no puede liberar suficiente espacio en disco en la unidad que contiene actualmente el archivo de registro, considere la posibilidad de mover el archivo a otra unidad con espacio suficiente.
Importante
Los archivos de registro no se deben almacenar en sistemas de archivo comprimidos.
Para mover un archivo de registro
Aumentar el tamaño de un archivo de registro
Si hay espacio disponible en el disco del registro, puede aumentar el tamaño del archivo de registro. El tamaño máximo de los archivos de registro es de dos terabytes (TB) por archivo de registro.
Para aumentar el tamaño del archivo
Si el crecimiento automático está deshabilitado, la base de datos está en línea y hay suficiente espacio disponible en el disco, ya sea:
Aumentar manualmente el tamaño del archivo para producir un solo incremento de tamaño.
Activa el crecimiento automático mediante la instrucción ALTER DATABASE para establecer un incremento distinto de cero en la opción FILEGROWTH.
Nota:
En cualquier caso, si se ha alcanzado el límite de tamaño actual, aumente el valor MAXSIZE.
Agregar un archivo de registro en un disco diferente
Agregue un nuevo archivo de registro a la base de datos en un disco diferente que tenga espacio suficiente mediante ALTER DATABASE <database_name> ADD LOG FILE.
Para agregar un archivo de registro
Véase también
ALTER DATABASE (Transact-SQL)
Administrar el tamaño del archivo de registro de transacciones
Copias de seguridad del registro de transacciones (SQL Server)
sp_add_log_file_recover_suspect_db (Transact-SQL)