El peor escenario que un DBA puede encontrar es una corrupción del archivo de datos de la base de datos SQL Server (debido a una ocurrencia física o de otro tipo, los archivos de datos pueden ser dañados y se pueden volver inaccesibles).
La mayoría de DBAs tienen planes de recuperación para este escenario – crear copias de seguridad regularmente y usarlas más tarde para restaurar la base de datos al punto en el tiempo más cercano disponible, previo al desastre. De todas maneras, esto no siempre es el caso. Incluso con respaldos regulares, siempre habrá una porción faltante de datos entre la última copia de seguridad y el tiempo del desastre. Con ApexSQL Log, es posible recuperar todos los datos al punto de falla, si el archivo del registro de transacciones (.ldf) no está dañado.
Los requerimientos para una recuperación exitosa de SQL en este escenario son:
Para recuperar los datos, usted tiene que hacer lo siguiente:
Abra SQL Server Management Studio y seleccione la opción Restore. Seleccione Device como la fuente, haga clic en el botón elíptico y añada la última copia de seguridad y todas las copias de seguridad del registro de transacciones disponibles:
Inicie ApexSQL Log, conéctese a la base de datos recuperada y haga clic en Next
Haga clic en Next
Después de hacer clic en Next, hay dos opciones. Usted puede seleccionar Open results in grid view si necesita revisar los cambios antes de restaurarlos a la base de datos, o usted puede seleccionar Undo/Redo para crear el script que restaurará los registros directamente, sin revisarlos primero.
En la pantalla Filter setup, seleccione Whole transaction log
Seleccione el filtro de operaciones y seleccione todas las operaciones de esquema (DDL). Este paso puede ser saltado si usted está seguro que no ha habido actualizaciones a los esquemas de tablas desde después de que la última copia de seguridad fuera creada.
Después de seleccionar Open results in grid view, los datos serán reconstruidos y mostrados en la cuadrícula. Si usted está satisfecho con los datos y desea restaurar todo, simplemente haga clic en Create redo script en el menú ApexSQL Log.
Use el script de rehacer recién creado para restaurar su base de datos al estado previo al desastre.
Después de seleccionar Export results to file, la pantalla Export to file será mostrada. Seleccione Generate reconstruct (REDO) script, especifique la localización del archivo de salida y haga clic en Finish.
Después de que la reconstrucción de los datos es finalizada, el archivo del script rehacer estará listo para la restauración de la base de datos.
Después del que el script REHACER es generado usando cualquiera de las opciones descritas, usted necesita ejecutarlo contra la base de datos recientemente restaurada. Usted puede usar SQL Server Management Studio, la utilidad ApexSQL RunScript o cualquier otro ambiente de desarrollo integrado. SQL Server Management Studio tiene una limitación en el tamaño del script y no puede ser usado para ejecutar scripts grandes.
Para usar la utilidad ApexSQL RunScript, bájela de aquí: ApexSqlRunScript
Abra la Consola de Comandos donde la utilidad ApexSQL RunScript fue descargada y ejecútela usando la siguiente sintaxis:
ApexSqlRunScript.exe <server_instance_name> <database_name> <script_filename>
e.g.
ApexSqlRunScript.exe (local)\SQL2012 RecoveredDatabase c:\Temp\RedoScript.sql
Después de que el script es ejecutado, la información de resumen será mostrada y su base de datos será restaurada al punto en el tiempo justo antes de que ocurriera el desastre.
Recursos útiles
MSDN - Restore and Recovery Overview (SQL Server)
MSDN - File Restores (Full Recovery Model)
© ALL RIGHTS RESERVED. Feedback Términos de uso Privacidad Cookie Preference Center