¿Hay algún lugar donde pueda buscar transacciones fallidas en SQL Server 2012?
10
¿Hay algún lugar donde pueda buscar transacciones fallidas en SQL Server 2012?
No, SQL Server no mantiene ningún historial sobre las transacciones que fueron canceladas / revertidas que es trivial y no presenta problemas potenciales adicionales (como se describe en la respuesta de @ ooutwire ). O incluso transacciones que se han comprometido.
Tendrá que realizar su propio registro dentro de su manejo de errores, o capturar eventos específicos relacionados con transacciones usando el rastreo del lado del servidor o Eventos extendidos.
Rastro:
Eventos extendidos:
Cuando dice transacciones "fallidas", ¿qué quiere decir exactamente?
Si desea ver las transacciones actuales en la instancia, puede utilizar el
sys.dm_tran_active_transactions
DMV.Además,
sys.dm_exec_sessions
tiene elopen_transaction_count
que puede darle esta información por sesión. A continuación se muestra una consulta de diagnóstico para extraer todos los procesos de usuario que tienen transacciones abiertas:Esta información también se puede obtener de
sys.dm_tran_session_transactions
:Si desea capturar cuándo se retrotraeron las transacciones (suponiendo tanto su deseo de transacciones "fallidas"), puede capturar el
rollback_tran_completed
evento Eventos extendidos . Si está buscando una vista de "todo" de las transacciones, puede capturar elsql_transaction
evento, que según lo definido por SQL Server esfuente
Puede usar fn_dblog () y buscar los ID de transacción para transacciones canceladas, así como una gran cantidad de otra información útil.
Escanea todo el registro de transacciones en la parte activa del registro. Esto se puede anular utilizando el indicador de traza 2537, que le permitirá volver lo más lejos posible al inicio del VLF "no reutilizado" más antiguo. Tenga cuidado al usar esta función, ya que escanea el registro al azar y el registro no puede cambiar cuando se realiza el escaneo; entonces, puede ver el crecimiento del registro.
También puede usar fn_dump_dblog contra un archivo de respaldo de registro.
fuente