sql >> Base de Datos >  >> RDS >> Sqlserver

Sepa cómo recuperar una tabla eliminada en SQL Server 2012 sin copia de seguridad

Resumen:¿Quiere saber cómo recuperar la tabla eliminada en SQL Server 2012 sin copia de seguridad? Lea este artículo para recuperar objetos de base de datos eliminados mediante el uso de soluciones eficientes y rápidas.

En ocasiones, un cliente puede realizar ACTUALIZAR operación o ELIMINAR operación en la base de datos de SQL Server sin aplicar WHERE condición. Esta es una explicación típica detrás de la pérdida de datos de las tablas de SQL Server. Dado que la base de datos de SQL Server es un DBMS relacional excepcionalmente común entre las divisiones y organizaciones corporativas, el problema de la pérdida de datos se amplifica mucho más. Por lo tanto, los clientes deben conocer las estrategias para recuperar datos eliminados de la tabla de SQL Server en caso de que ocurra algún desastre.

Las filas eliminadas se pueden recuperar mediante LSN si se conoce el tiempo de eliminación. Esto debería ser posible utilizando números de secuencia de registro (LSN). LSN es un identificador especial dado a cada registro presente en el registro de transacciones de SQL Server. Hablaremos sobre el procedimiento para recuperar datos y tablas de SQL Server eliminados con la ayuda de Transaction Log y LSN.

Sugerido: Para eludir la forma LSN manual larga e incorrecta de lidiar con la recuperación de registros eliminados de la tabla SQL utilizando una herramienta de terceros impulsada, por ejemplo, la herramienta de recuperación de base de datos SQL .

Procedimiento para Saber Cómo Recuperar Tabla Eliminada en SQL Server 2012 Sin Respaldo

Hay algunos requisitos que deben cumplirse antes de comenzar el procedimiento para recuperar datos eliminados de la tabla SQL. Para recuperar de manera efectiva las filas eliminadas de una tabla en la base de datos de SQL Server, debe tener el modelo de recuperación BULK-LOGGED o FULL cuando ocurrió la eliminación originalmente. Se requieren algunas actividades enérgicas para que los registros aún estén accesibles para ejecutar la recuperación de datos.

Siga los pasos que se ofrecen a continuación para recuperar datos eliminados de SQL Server 2005, 2008, 2012, 2014 y 2016 mediante el uso de registros de transacciones.

Paso 1

Verifique la cantidad de filas presentes en la tabla de la cual los datos se eliminaron inadvertidamente utilizando la pregunta a la que se hace referencia debajo:

SELECCIONAR * DE Table_name

Paso 2

Realice la copia de seguridad del registro de transacciones de la base de datos utilizando la consulta que se proporciona a continuación:

USE el nombre de la base de datos

IR

Registro de copia de seguridad [nombre de la base de datos]

AL DISCO =N'D:\Nombre de la base de datos\RDDTrLog.trn'

SIN FORMATO, NOINIT,

NOMBRE =N'Nombre de la base de datos-Copia de seguridad del registro de transacciones',

SALTAR, SIN VIENTO, SIN DESCARGA, ESTADÍSTICAS =10

IR

Paso 3

Para recuperar datos eliminados de la tabla de SQL Server, debemos recopilar algunos datos sobre las filas eliminadas. Ejecute la consulta que se ofrece a continuación para lograr esta razón

USE el nombre de la base de datos

IR

Seleccione [LSN actual], [ID de transacción], Operación, Contexto, AllocUnitName

DESDE

fn_dblog(NULO, NULO)

Operación WHERE ='LOP_DELETE_ROWS'

De la consulta anterior, obtendremos el ID de transacción (digamos 000:000001f3) de las filas eliminadas. Actualmente, cuando se eliminaron estas filas, se resolverá para usar esta ID.

Paso 4

En esta progresión, ubicaremos el momento particular en el que se eliminaron las filas utilizando el ID de transacción 000:000001f3. Esto se completa ejecutando la consulta dada de la siguiente manera:

USE el nombre de la base de datos

IR

SELECCIONAR

[LSN actual], Operación, [ID de transacción], [Hora de inicio], [Nombre de transacción], [SID de transacción]

DESDE

fn_dblog(NULO, NULO)

DÓNDE

[ID de transacción] ='000:000001f3'

Y

[Operación] ='LOP_BEGIN_XACT'

Al ejecutar esta consulta obtendremos la estimación del número de secuencia de registro (LSN) actual (supongamos 00000020:000001d0:0001).

Paso 5

Ahora comenzaremos el procedimiento de restauración para recuperar los datos eliminados de las filas de la tabla de SQL Server que se perdieron. Esto se termina usando la consulta debajo:

USE el nombre de la base de datos

IR

Restaurar DATABASE Databasename_COPY FROM

Placa ='D:\Nombre de la base de datos\RDDFull.bak'

CON

MOVER 'Nombre de la base de datos' A 'D:\RecoverDB\Nombre de la base de datos.mdf',

MUEVA 'Databasename_log' A 'D:\RecoverDB\Databasename_log.ldf',

REEMPLAZAR, NO RECUPERAR;

IR

  Paso 6

Actualmente, aplique el registro de transacciones para restaurar las filas eliminadas utilizando LSN 00000020:000001d0:0001:

USE el nombre de la base de datos

IR

Restore LOG Databasename_COPY FROM DISK =N'D:\Databasename\RDOTrLog.trn' WITH STOPBEFOREMARK ='lsn:0x00000020:000001d0:0001' Nota:Dado que los valores LSN están en estructura hexadecimal y para restaurar tablas utilizando esta LSN, tenemos que cambiarlo a la estructura decimal. Por esta razón, incluimos 0x no mucho antes del LSN que apareció anteriormente.

Paso 7

El procedimiento para recuperar registros eliminados de la tabla SQL se completará de manera efectiva. Ahora verifique si los registros eliminados están nuevamente en la base de datos llamada Databasename_Copy.

USE Databasename_Copy GO Seleccione * from Table_name

Limitaciones del método de registro de transacciones

  • Estrategia profundamente tediosa para recuperar datos eliminados de la tabla de SQL Server, ya que incluye algunas consultas extensas para ejecutar.
  • Sorprendentemente alucinante de actualizar para los clientes que no tienen suficientes datos especializados.
  • Probabilidades más importantes de perder datos debido a errores durante la aplicación y ejecución de consultas.

Solución Electiva para Saber Cómo recuperar una tabla eliminada en SQL Server 2012 sin copia de seguridad

Se puede acceder a la mejor solución electiva para recuperar filas de SQL Server 2019/2017/2016/2014/2012/2008/2005. La solución electiva de la que hablamos aquí puede resolver cualquier tipo de problema que surja en SQL Server. Puede corregir errores de SQL y reparar archivos SQL MDF y NDF. Herramienta de recuperación SQL de FreeViewer es una herramienta empresarial que permite recuperar Triggers, Reglas, Funciones, Tablas. Además, también restaura los procedimientos almacenados en SQL Server de manera efectiva sin pérdida de datos. La parte importante es que la aplicación ofrece muchas opciones avanzadas al reparar archivos de base de datos de SQL Server corruptos. Además, esta aplicación muestra los registros de la tabla SQL eliminados en color rojo. Este producto es bueno con Microsoft Outlook 2019 y todas sus versiones inferiores.

Descargue la versión de demostración gratuita para comprender la mejor capacidad posible de la aplicación.

Pasos para recuperar fácilmente objetos de base de datos eliminados

  1. Descargue y envíe la  recuperación de SQL y abra el archivo MDF.
  2. Seleccione la alternativa de Escaneo avanzado, Detectar la versión de SQL Server para recuperar registros eliminados en SQL Server.
  3. La herramienta iniciará el Escaneo procedimiento del archivo de base de datos primaria (MDF)
  4. Consulte los componentes de la base de datos SQL, la herramienta muestra los registros de la tabla SQL eliminados en color rojo. Después de eso, haga clic en Exportar
  5. Debe proporcionar los detalles de autenticación de la base de datos en el siguiente segmento.
  6. Marque la opción 'Crear nueva base de datos' opción y proporcione un nombre de base de datos.
  7. Valorar la base de datos 'Con esquema y datos' para recuperar datos en las filas eliminadas en SQL Server. (También marque la casilla de verificación Exportar registros eliminados)
  8. Guarde ahora el informe y abra la base de datos creada recientemente que contiene los registros recuperados.

Conclusión

Lea también:El usuario también puede leer otra publicación similar para conocer las mejores prácticas de recuperación ante desastres de Microsoft SQL Server.

Aunque la estrategia LSN puede restaurar registros eliminados de tablas SQL, es todo menos una opción prescrita para los clientes debido a su naturaleza multifacética y repetitiva. Más bien, se recomienda utilizar una solución automatizada para saber cómo recuperar una tabla eliminada en SQL Server 2012 sin copia de seguridad.