Просмотр журналов транзакций в SQL Server 2008 [закрыто]
Мне нужно просмотреть журналы транзакций базы данных наSQL Server 2008 , чтобы найти транзакцию удаления и, надеюсь, откатить ее.
К сожалению, я понятия не имею, с чего начать, и мне трудно определить, какие статьи хорошие в Google.
Что мне делать?
3 ответов:
Можно использовать недокументированный
DBCC LOG(databasename, typeofoutput)Где 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.Например, DBCC LOG (database, 1)
Вы также можете попробовать fn_dblog.
Для отката транзакции с использованием журнала транзакций я бы взглянул на сообщение переполнения стекаоткат транзакции с использованием журнала транзакций.
Вы не можете легко прочитать файл журнала транзакций, потому что он не задокументирован должным образом. Есть в основном два способа сделать это. Использование недокументированных или полудокументированных функций базы данных или использование сторонних инструментов.
Примечание: это имеет смысл только в том случае, если ваша база данных находится в режиме полного восстановления.
Функции SQL:
Команда DBCC log и fn_dblog - более детально здесь и здесь.
Сторонние инструменты:
Жаба для SQL Server и Apexsql Log .
Вы также можете проверить несколько других тем, где это обсуждалось:
Я случайно удалил целую кучу данных в неправильной среде, и этот пост был одним из первых, которые я нашел.
Поскольку я одновременно паниковал и искал решение, я пошел за первым, что увидел - Apexsql Logs, что составляло $2000, что было приемлемой ценой. Однако с тех пор я обнаружил, что Toad for Sql Server может генерировать сценарии отмены из журналов транзакций, и это всего лишь $655.Наконец, нашел еще более дешевый опцияSysToolsGroup Log Analyzer и стоит всего $300.
Comments