Pregunta

necesito para ver los registros de transacciones de una base de datos sobre SQL Server 2008 con el fin de encontrar una transacción de eliminación y es de esperar rodar de nuevo.

Por desgracia, no tengo idea de por dónde empezar, y me resulta difícil determinar cuáles son buenos artículos en Google.

¿Qué debo hacer?

¿Fue útil?

Solución

Se podría utilizar el indocumentado

DBCC LOG(databasename, typeofoutput)

donde typeofoutput:

0: Return only the minimum of information for each operation -- the operation, its context and the transaction ID. (Default)
1: As 0, but also retrieve any flags and the log record length.
2: As 1, but also retrieve the object name, index name, page ID and slot ID.
3: Full informational dump of each operation.
4: As 3 but includes a hex dump of the current transaction log row.

Por ejemplo, DBCC LOG (base de datos, 1)

También podría intentar fn_dblog.

Para deshacer una transacción utilizando registro de transacciones que podría echar un vistazo a desbordamiento de pila publicación transacción Rollback mediante registro de transacciones .

Otros consejos

No se puede leer el archivo de registro de transacciones con facilidad debido a que no es adecuadamente documentados. Hay básicamente dos maneras de hacer esto. Uso de las funciones de base de datos sin papeles o semi-documentado o el uso de herramientas de terceros.

Nota:. Esto sólo tiene sentido si su base de datos está en modo de recuperación completa

Funciones SQL:

DBCC de registro y fn_dblog - más detalles aquí y aquí .

Herramientas de terceros:

Toad para SQL Server y ApexSQL Log .

También puede revisar varios otros temas en los que esta se discutió:

He eliminado accidentalmente un montón de datos en el entorno equivocado y este post fue uno de los primeros que he encontrado.

Debido a que estaba entrando en pánico y la búsqueda de una solución al mismo tiempo, fui por primera cosa que vi - ApexSQL Registros , que era de $ 2000, que era un coste aceptable.

Sin embargo, desde entonces he descubierto que Toad para SQL Server puede generar secuencias de comandos de deshacer de registros de transacciones y es sólo $ 655.

Por último, se encontró una opción incluso más barato SysToolsGroup Log Analyzer y es única de $ 300.

Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top