Cómo reducir el archivo de registro de transacciones en SQL Server 2005

Seleccione idioma Seleccione idioma
Id. de artículo: 907511 - Ver los productos a los que se aplica este artículo
Si eres un cliente de Small Business, encontrar una solución de problemas y los recursos de aprendizaje adicionales el Soporte para pequeñas empresas sitio.
Expandir todo | Contraer todo

Resumen

En Microsoft SQL Server 2005, puede comprimir un archivo de registro de transacciones en una base de datos para quitar las páginas no utilizadas. Reutiliza el motor de base de datos espacio de forma eficaz. Sin embargo, cuando un archivo de registro de transacciones crece inesperadamente, es posible que reducir manualmente el archivo de registro de transacciones.

Este artículo describe cómo utilizar el La instrucción DBCC SHRINKFILE para reducir el archivo de registro de transacciones manualmente en el modelo de recuperación completa en una base de datos de SQL Server 2005. El método que se utiliza para reducir el archivo de registro de transacciones en SQL Server 2005 puede diferir el método que usas para reducir el archivo de registro de transacciones en SQL Server 2000. Para obtener más información acerca de cómo reducir el archivo de registro de transacciones en SQL Server 2000, haga clic en el número de artículo siguiente para verlo en Microsoft Knowledge Base:
272318Reducir el registro de transacciones en SQL Server 2000 con DBCC SHRINKFILE

Más información

En SQL Server 2005, intenta una operación de reducción (DBCC SHRINKFILE) reducir el archivo de registro de transacción especificada al tamaño solicitado de forma inmediata. Para reducir el archivo de registro de transacciones manualmente en el modelo de recuperación completa, en primer lugar una copia el archivo de registro de transacciones. A continuación, utilice el Instrucción DBCC SHRINKFILE para reducir el archivo de registro de transacciones.

Normalmente, reducir el archivo de registro de transacciones SQL Server 2005 es más rápido que reducir el archivo de registro de transacciones en SQL Server 2000. La razón es que la SQL Administrador de registro de Server 2005 crea o reutiliza los archivos de registro virtuales inactivos por siguiendo el orden de almacenamiento de disco físico. Por lo tanto, la parte inactiva de la transacción archivo de registro suele estar al final del archivo.

Por ejemplo, el archivo de registro de transacciones puede tener 100 archivos de registro virtuales, y se utilizan sólo dos archivos de registro virtuales. SQL Server 2000 puede almacenar el primer archivo de registro virtuales utilizados en el inicio del archivo de registro de transacciones y la segunda utiliza el archivo de registro virtual en medio del archivo de registro de transacciones. Para comprimir el archivo de registro de transacciones hasta sólo 2 archivos de registro virtuales, SQL Server rellena la parte restante del segundo archivo de registro virtual mediante el uso de registro ficticias entradas. SQL Server se mueve el principio del registro lógico en el siguiente disponible virtual archivo de registro especificado por el administrador del registro. El administrador del registro puede crear un archivo de registro virtual en medio del archivo de registro de transacciones sólo de adelanto último activo virtual archivo de registro. En ese caso, tendrá que utilizar varias operaciones de copia de seguridad de registro y varias de las operaciones de reducción para correctamente comprimir el archivo de registro de transacciones a 2 archivos de registro virtuales. En el peor caso de este ejemplo, tendrá que utilizar 50 operaciones de copia de seguridad de registro y reducción de 50 operaciones para correctamente comprimir el archivo de registro de transacciones a 2 archivos de registro virtuales.

Sin embargo, en SQL Server 2005, puede realizar una instrucción DBCC SHRINKFILE para reducir el archivo de registro de transacciones de forma inmediata a 2 archivos de registro virtuales. Puede hacerlo porque el Administrador de registro de SQL Server 2005 crea 2 archivos de registro virtuales siguiendo el orden de almacenamiento de disco físico. Ambos archivos de registro virtuales están al principio del archivo de registro de transacciones.

Cuando intenta comprimir un archivo de registro de transacciones que tiene poco espacio libre en SQL Server 2005, tendrá que realizar una operación de copia de seguridad de registro adicionales. La operación de copia de seguridad de registro adicionales trunca el archivo de registro de transacciones a un tamaño menor. Esta operación de copia de seguridad del registro es además de los tres pasos que realizar para reducir el archivo de registro de transacciones en SQL Server 2000. Para obtener más información, vea el artículo de Microsoft Knowledge Base que se menciona en la sección "Resumen". Para comprimir un archivo de registro de transacciones que tiene poco espacio libre en SQL Server 2005, siga estos pasos:
  1. Hacer copia de seguridad del archivo de registro de transacciones para hacer que la mayoría de los archivos de registro virtual Directory esté inactivo. Por lo tanto, se pueden quitar los archivos de registro virtuales inactivos en un paso posterior. Para ello, inicie SQL Server Management Studio y ejecute una instrucción de Transact-SQL que es similar a la siguiente instrucción de Transact-SQL.
    BACKUP LOG <DatabaseName> TO DISK = '<BackupFile>'
    Nota En esta declaración, <DatabaseName></DatabaseName>es un marcador de posición para el nombre de la base de datos que va a realizar, y <BackupFile></BackupFile> es un marcador de posición para la ruta de acceso completa del archivo de copia de seguridad.

    Por ejemplo, ejecute la siguiente instrucción de Transact-SQL.
    BACKUP LOG TestDB TO DISK='C:\TestDB1.bak'
  2. Reducir el archivo de registro de transacciones. Para ello, ejecute una instrucción de Transact-SQL que es similar a la siguiente instrucción de Transact-SQL.
    DBCC SHRINKFILE (<FileName>, <TargetSize>) WITH NO_INFOMSGS
    Nota En esta declaración, <FileName></FileName>es un marcador de posición para el nombre del archivo de registro de transacciones, y <TargetSize></TargetSize> es un marcador de posición para el tamaño de destino que desea que el archivo de registro de transacción sea. El tamaño de destino debe ser razonable. Por ejemplo, no se puede reducir el archivo de registro de transacciones a un tamaño inferior a 2 archivos de registro virtuales.
  3. Si la instrucción DBCC SHRINKFILE no reduce el archivo de registro de transacciones para el tamaño de destino, ejecute la instrucción BACKUP LOG que se menciona en el paso 1 para que más los archivos de registro virtuales inactivos.
  4. Ejecute la instrucción DBCC SHRINKFILE que se menciona en el paso 2. Después de esta operación, el archivo de registro de transacción debe ser prácticamente el tamaño de destino.
En resumen, el algoritmo del Administrador de registro para obtener el siguiente archivo de registro virtual cambiado en SQL Server 2005. Por lo tanto, reducir el archivo de registro de transacciones en SQL Server 2005 puede diferir comprimir el archivo de registro de transacciones en SQL Server 2000.
  • Si un archivo de registro tiene mucho espacio disponible, la reducción del archivo de registro de transacciones en SQL Server 2005 es más rápido que reducir el archivo de registro de transacciones en el SQL Server 2000.
  • Si un archivo de registro no tiene queda espacio, reducir el archivo de registro de transacciones en SQL Server 2005 es igual a comprimir el archivo de registro de transacciones en SQL Server 2000.
  • Si un archivo de registro tiene poco espacio libre, tendrá que realizar una copia de seguridad de registro adicionales operación en SQL Server 2005, lo que tiene que realizar en SQL Server 2000.

Referencias

Para obtener más información acerca de cómo reducir el registro de transacciones, vaya a la Reducir el registro de transacciones Sitio Web de Microsoft Developer Network (MSDN).

Para obtener más información acerca de la instrucción DBCC SHRINKFILE, vaya a la DBCC SHRINKFILE (Transact-SQL) Sitio Web de MSDN.

Para obtener más información acerca de truncamiento del registro de transacciones, vaya a la Truncamiento de logs de transacciones Sitio Web de MSDN.

Propiedades

Id. de artículo: 907511 - Última revisión: viernes, 20 de julio de 2012 - Versión: 1.0
La información de este artículo se refiere a:
  • Microsoft SQL Server 2005 Standard Edition
  • Microsoft SQL Server 2005 Express Edition
  • Microsoft SQL Server 2005 Developer Edition
  • Microsoft SQL Server 2005 Enterprise Edition
  • Microsoft SQL Server 2005 Workgroup Edition
Palabras clave: 
kbsqlsetup kbsql2005engine kbinfo kbmt KB907511 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): 907511

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