Случайно аннулировав столбец в MS SQL 2012, я рассмотрю, как использовать fn_dblog в первый раз. Я ранее поддерживал таблицу и удалял ее сегодня утром. Я использую режим полного восстановления (код ниже для тех, кто в будущем хотел бы узнать):
SELECT name, recovery_model_desc
FROM sys.databases
WHERE name = 'model' ;
GO
Можно ли отменить транзакцию DROP TABLE, которая была совершена в течение последних 12 часов?
Я нашел эту транзакцию, которая, кажется, именно то, что я хочу. Но найдены только последние 3431 строки:
SELECT [Current LSN],
[Operation],
[Transaction ID],
[Parent Transaction ID],
[Begin Time],
[Transaction Name],
[Transaction SID]
FROM fn_dblog(NULL, NULL)
WHERE [Operation] = 'LOP_BEGIN_XACT'
Как вернуть предыдущие транзакции с помощью этого запроса?
Здесь я на незнакомой территории. О чем еще я должен думать?
В чем опасность использования fn_fblog? В сообщении в блоге я нашел это ( https://raresql.com/2013/04/15/sql-server-undocumented-function-fn_dblog/ ):
«Без сомнения, fn_dblog является одной из полезных недокументированных функций, но не использует эту функцию на рабочем сервере, если не требуется иное». Что является причиной этого?
=== EDIT ===
На стороне примечание, очень полезная статья здесь: Очень полезное введение в регистрацию MS SQL: http://www.sqlshack.com/reading-sql-server-transaction-log/
Случайно аннулировав столбец в MS SQL 2012, я рассмотрю, как использовать fn_dblog в первый раз. Я ранее поддерживал таблицу и удалял ее сегодня утром. Я использую режим полного восстановления (код ниже для тех, кто в будущем хотел бы узнать):
SELECT name, recovery_model_desc
FROM sys.databases
WHERE name = 'model' ;
GO
Можно ли отменить транзакцию DROP TABLE, которая была совершена в течение последних 12 часов?
Я нашел эту транзакцию, которая, кажется, именно то, что я хочу. Но найдены только последние 3431 строки:
SELECT [Current LSN],
[Operation],
[Transaction ID],
[Parent Transaction ID],
[Begin Time],
[Transaction Name],
[Transaction SID]
FROM fn_dblog(NULL, NULL)
WHERE [Operation] = 'LOP_BEGIN_XACT'
Как вернуть предыдущие транзакции с помощью этого запроса?
Здесь я на незнакомой территории. О чем еще я должен думать?
В чем опасность использования fn_fblog? В сообщении в блоге я нашел это ( https://raresql.com/2013/04/15/sql-server-undocumented-function-fn_dblog/ ):
«Без сомнения, fn_dblog является одной из полезных недокументированных функций, но не использует эту функцию на рабочем сервере, если не требуется иное». Что является причиной этого?
=== EDIT ===
На стороне примечание, очень полезная статья здесь: Очень полезное введение в регистрацию MS SQL: http://www.sqlshack.com/reading-sql-server-transaction-log/
00SQL-сервер, журнала транзакций,