|
Восстановление базы данных из ldf-файла
|
|||
---|---|---|---|
#18+
Добрый день! Возможно ли выполнить восстановление базы имея: 1) MDF-файл на начальную дату (месячной давности); 2) LDF-файл на текущую дату. Бэкап и шринк не делался. Если можно то какими средствами? Спасибо. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.06.2014, 12:55 |
|
Восстановление базы данных из ldf-файла
|
|||
---|---|---|---|
#18+
... |
|||
:
Нравится:
Не нравится:
|
|||
09.06.2014, 13:00 |
|
Восстановление базы данных из ldf-файла
|
|||
---|---|---|---|
#18+
а, пардон, не так понял ... |
|||
:
Нравится:
Не нравится:
|
|||
09.06.2014, 13:07 |
|
Восстановление базы данных из ldf-файла
|
|||
---|---|---|---|
#18+
777ser777Добрый день! Возможно ли выполнить восстановление базы имея: 1) MDF-файл на начальную дату (месячной давности); 2) LDF-файл на текущую дату. Бэкап и шринк не делался. Если можно то какими средствами? Спасибо. модель восстановления у базы какая была? ... |
|||
:
Нравится:
Не нравится:
|
|||
09.06.2014, 13:10 |
|
Восстановление базы данных из ldf-файла
|
|||
---|---|---|---|
#18+
msLex777ser777Добрый день! Возможно ли выполнить восстановление базы имея: 1) MDF-файл на начальную дату (месячной давности); 2) LDF-файл на текущую дату. Бэкап и шринк не делался. Если можно то какими средствами? Спасибо. модель восстановления у базы какая была? Full (полная) конечно! ... |
|||
:
Нравится:
Не нравится:
|
|||
09.06.2014, 14:31 |
|
Восстановление базы данных из ldf-файла
|
|||
---|---|---|---|
#18+
Восстанавливаете полный бэкап с norecovery, восстанавливаете бэкап журнала с recovery. Ваш LDF должен принадлежать той забэкапленной базе, разумеется, и иметь резервную копию. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.06.2014, 16:50 |
|
Восстановление базы данных из ldf-файла
|
|||
---|---|---|---|
#18+
777ser777msLexпропущено... модель восстановления у базы какая была? Full (полная) конечно! Теоретически . Можно попробовать просто приатачить mdf + ldf файл. Если база подцепится (я не знаю, что может помещать), весь непримененный (тот, что после последнего checkpoint-а) лог должен накатиться на базу, а с учетом того, что checkpoint LSN храниться в самой базе, то проблем возникнуть не должно. Перед экспериментом желательно скопировать оба файла, дабы иметь еще одну попытку. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.06.2014, 17:55 |
|
Восстановление базы данных из ldf-файла
|
|||
---|---|---|---|
#18+
Владислав КолосовВосстанавливаете полный бэкап с norecovery, восстанавливаете бэкап журнала с recovery. Ваш LDF должен принадлежать той забэкапленной базе, разумеется, и иметь резервную копию.Дык нету бакапа, в этом и прикол! ... |
|||
:
Нравится:
Не нравится:
|
|||
09.06.2014, 20:48 |
|
Восстановление базы данных из ldf-файла
|
|||
---|---|---|---|
#18+
msLexМожно попробовать просто приатачить mdf + ldf файл. Если база подцепится (я не знаю, что может помещать), весь непримененный (тот, что после последнего checkpoint-а) лог должен накатиться на базу, а с учетом того, что checkpoint LSN храниться в самой базе, то проблем возникнуть не должно. База может и подцепится, а вот лог накатываться то уже точно не будет. С таким же успехом можно просто восстановить mdf файл без ldf. Результат скорее всего будет тот же. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.06.2014, 21:39 |
|
Восстановление базы данных из ldf-файла
|
|||
---|---|---|---|
#18+
MindmsLexМожно попробовать просто приатачить mdf + ldf файл. Если база подцепится (я не знаю, что может помещать), весь непримененный (тот, что после последнего checkpoint-а) лог должен накатиться на базу, а с учетом того, что checkpoint LSN храниться в самой базе, то проблем возникнуть не должно. База может и подцепится, а вот лог накатываться то уже точно не будет. С таким же успехом можно просто восстановить mdf файл без ldf. Результат скорее всего будет тот же. по-чему такая уверенность? по факту эта ситуация (mdf - месячной давности + "современный" ldf) ничем не отличается от ситуации когда месяц не делался чекпоинт а потом пристрелили процесс sql server-а ... |
|||
:
Нравится:
Не нравится:
|
|||
09.06.2014, 22:03 |
|
Восстановление базы данных из ldf-файла
|
|||
---|---|---|---|
#18+
msLexпо-чему такая уверенность?Можно снять tail log backup, но накатить его будет не на что - полного бекапа нету. А если подцепить имеющийся mdf месячной давности и сделать полный бекап, то LSN'ы в нем будут уже совершенно другие. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.06.2014, 23:42 |
|
Восстановление базы данных из ldf-файла
|
|||
---|---|---|---|
#18+
invmmsLexпо-чему такая уверенность?Можно снять tail log backup, но накатить его будет не на что - полного бекапа нету. А если подцепить имеющийся mdf месячной давности и сделать полный бекап, то LSN'ы в нем будут уже совершенно другие. либо я вас не понимаю, либо вы меня. предположим у нас есть база на момент времени t1, mdf и ldf "согласованны", "грязных" страниц нет, checkpoint lsn = последнему lsn в логе. мы производим некое количество изменений, коммитем их которые, они попадают в лог, но из кеша на диск в mdf не сбрасываются, и того у нас получается mdf на момент t1 и ldf на момент времени t2. в этот момент мы "жестко" ребутаем сервис, sql server по логу повторно накатит все изменения в mdf и принудительно сделает checkpoint ситуация автора по сути ничем не отличается, только между t1 и t2 прошел месяц. ... |
|||
:
Нравится:
Не нравится:
|
|||
09.06.2014, 23:58 |
|
Восстановление базы данных из ldf-файла
|
|||
---|---|---|---|
#18+
msLexситуация автора по сути ничем не отличается, только между t1 и t2 прошел месяц.По сути всё правильно, но сиквел не умеет востанавливать данные на дату ранее, чем сделан бакап. mdf файл да, старый, но бакап то можно сделать только сейчас, вот и восстановить можно будет на момент "сейчас". То есть у сиквела маловато возможностей, не предусмотрены операции, которые теоретически можно сделать и даже совсем несложно технически. Разве что попробовать присоединить файл с включённым аттрибутом read-only, может сиквел не поменяет ему всякие LSN-ы, и сделать бакап... А вообще это лишний раз напоминает о необходимости делать бакапы. Надеюсь, что 777ser777 из тех специалистов, которые потеряли данные из за отсутствия бакапа единственный раз в жизни, как и положено. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2014, 01:29 |
|
Восстановление базы данных из ldf-файла
|
|||
---|---|---|---|
#18+
нет, не прокатит. проверяю так: Код: sql 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. 25. 26. 27. 28. 29. 30. 31. 32. 33. 34. 35. 36. 37. 38. 39. 40. 41. 42. 43. 44. 45. 46. 47. 48. 49. 50. 51. 52. 53. 54. 55. 56. 57. 58. 59. 60. 61. 62. 63. 64. 65. 66. 67.
----------------------------------- Msg 1813, Level 16, State 2, Line 1 Could not open new database 'db8'. CREATE DATABASE is aborted. Msg 5125, Level 24, State 1, Line 1 File 'Z:\Anna\_backups\hp\db8\db8.mdf' appears to have been truncated by the operating system. Expected size is 3328 KB but actual size is 2304 KB. Msg 3313, Level 21, State 2, Line 1 During redoing of a logged operation in database 'db8', an error occurred at log record ID (30:122:54). Typically, the specific failure is previously logged as an error in the Windows Event Log service. Restore the database from a full backup, or repair the database. не могу сейчас объяснить, на какой момент он требует .mdf, но файл не обрезан. опыт был проведен 2 раза, файл копируется нормально. для проверки в третий раз просто пробую сразу же приаттачить этот .mdf без .ldf, и все с ним ok. к концу выполнения заполнения таблицы чисел .mdf становится 18.688 Кб, сервер же требует .mdf размером в 3328 KB ... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2014, 01:29 |
|
Восстановление базы данных из ldf-файла
|
|||
---|---|---|---|
#18+
стукнуло мне, что он хочет файл .mdf на момент после его первого автоприращения (былo 1 Мб в первом опыте), повторяю эксперимент, задаю нач. размер для .mdf 5 Мб, автоприращение 2 Мб . проделываю все вышеописанное, вылазит ошибка: Msg 1813, Level 16, State 2, Line 1 Could not open new database 'db8'. CREATE DATABASE is aborted. Msg 5125, Level 24, State 1, Line 1 File 'Z:\Anna\_backups\hp\db8\db8.mdf' appears to have been truncated by the operating system. Expected size is 6144 KB but actual size is 5120 KB. Msg 3313, Level 21, State 2, Line 1 During redoing of a logged operation in database 'db8', an error occurred at log record ID (30:123:186). Typically, the specific failure is previously logged as an error in the Windows Event Log service. Restore the database from a full backup, or repair the database. ну не знаю я, почему он на мегабайт больше ждет, нету идей, завтра еще подумаю, а может кто-то знает и поделится соображениями. судя по ошибке, он все же начинает накатывать, что такое log record ID, что ему соответствует в выводе fn_dblog? а то можно посмотреть в исходной базе в fn_dblog, что там за операция, на к-ой спотыкается ... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2014, 02:04 |
|
Восстановление базы данных из ldf-файла
|
|||
---|---|---|---|
#18+
o-oстукнуло мне, что он хочет файл .mdf на момент после его первого автоприращения (былo 1 Мб в первом опыте), повторяю эксперимент, задаю нач. размер для .mdf 5 Мб, автоприращение 2 Мб . проделываю все вышеописанное, вылазит ошибка: Msg 1813, Level 16, State 2, Line 1 Could not open new database 'db8'. CREATE DATABASE is aborted. Msg 5125, Level 24, State 1, Line 1 File 'Z:\Anna\_backups\hp\db8\db8.mdf' appears to have been truncated by the operating system. Expected size is 6144 KB but actual size is 5120 KB. Msg 3313, Level 21, State 2, Line 1 During redoing of a logged operation in database 'db8', an error occurred at log record ID (30:123:186). Typically, the specific failure is previously logged as an error in the Windows Event Log service. Restore the database from a full backup, or repair the database. ну не знаю я, почему он на мегабайт больше ждет, нету идей, завтра еще подумаю, а может кто-то знает и поделится соображениями. судя по ошибке, он все же начинает накатывать, что такое log record ID, что ему соответствует в выводе fn_dblog? а то можно посмотреть в исходной базе в fn_dblog, что там за операция, на к-ой спотыкается Log rec id очень похож на обычный lsn (hex или dec непонятно), а каким образом отцеплялся mdf? Останавливался сервер или база детачилась? ... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2014, 08:47 |
|
Восстановление базы данных из ldf-файла
|
|||
---|---|---|---|
#18+
msLexпредположим у нас есть база на момент времени t1, mdf и ldf "согласованны", "грязных" страниц нет, checkpoint lsn = последнему lsn в логе. ... ситуация автора по сути ничем не отличается, только между t1 и t2 прошел месяц.Очень даже отличается - чекпоинты были. Так что если гипотетически предположить, что удалось присоединить БД из старого mdf и нового ldf, накат лога пойдет с момента последнего чекпоинта. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2014, 09:30 |
|
Восстановление базы данных из ldf-файла
|
|||
---|---|---|---|
#18+
в порядке эксперимента можно попробовать всякие разные сторонние тулзы сам, правда, никогда не пользовался ... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2014, 09:34 |
|
Восстановление базы данных из ldf-файла
|
|||
---|---|---|---|
#18+
invmmsLexпредположим у нас есть база на момент времени t1, mdf и ldf "согласованны", "грязных" страниц нет, checkpoint lsn = последнему lsn в логе. ... ситуация автора по сути ничем не отличается, только между t1 и t2 прошел месяц.Очень даже отличается - чекпоинты были. Так что если гипотетически предположить, что удалось присоединить БД из старого mdf и нового ldf, накат лога пойдет с момента последнего чекпоинта. Lsn последнего чекпоинта храниться в странице 1:9 (boot page) самой базы. В mdf месячной давности и LSN чекпоинта месячной давности. Т.е. по идее, именно с этого lsn и должно начаться применения лога Сейчас попробую провести эксперемент. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2014, 09:59 |
|
Восстановление базы данных из ldf-файла
|
|||
---|---|---|---|
#18+
Проверил. 1. Создал базу с полной моделью восстановления. 2. Сделал полный бекап (до этого база по факту в simple ) 3. Сделал detach. 4. Скопировал mdf 5. Сделал attach 6. Внес изменения в данные. 7. Сделал checkpoint 8. Сделал detach. 9. Подменил mdf на скопированную в 4-том пункте 10. Сделал attach база подцепилась, но изменений пункта 6 нет, в checkpoint lsn в странице 1:9 храниться lsn завершения последнего checkpoint-а из лога. видимо, либо в логе также где-то храниться информация о последнем checkpoint lsn, либо sql сканирует лог находит lsn последнего checkpoint-а. можно "поизвращаться" дальше, найти место хранения checkpoint lsn в логе и в базе и подменить. ... |
|||
:
Нравится:
Не нравится:
|
|||
10.06.2014, 11:27 |
|
Восстановление базы данных из ldf-файла
|
|||
---|---|---|---|
#18+
Владислав Колосов Восстанавливаете полный бэкап с norecovery, восстанавливаете бэкап журнала с recovery. Ваш LDF должен принадлежать той забэкапленной базе, разумеется, и иметь резервную копию. здравствуйте. у меня проблема аналогичная что и у топикстартера. а именно шифровальщик покушал MDF а последний актуальный бекап 3 недельной давности. но есть нетронутый шифровальщиком LDF сервер мускула не поднимается, вероятно пожрано что то из системного не могли бы вы подробнее описать вами вышеуказанный порядок действий на новом экземпляре сервера? ---Восстанавливаете полный бэкап с norecovery--- это мне относительно понятно ---восстанавливаете бэкап журнала с recovery--- я так понимаю, речь идет об отдельном бекапе LDF, если да как его получить из оригинального LDF? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2020, 11:30 |
|
Восстановление базы данных из ldf-файла
|
|||
---|---|---|---|
#18+
sirsyslik, у Вас должна быть резервная копия журнала при условии, что база имеет полную модель восстановления. ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2020, 12:18 |
|
Восстановление базы данных из ldf-файла
|
|||
---|---|---|---|
#18+
База данных в какой модели восстановления? ... |
|||
:
Нравится:
Не нравится:
|
|||
18.03.2020, 12:25 |
|
Восстановление базы данных из ldf-файла
|
|||
---|---|---|---|
#18+
Гавриленко Сергей Алексеевич, полная, файл журнала около 90гб, при том что сама база +-2гб. Шринк не производился ни разу. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.03.2020, 16:03 |
|
Восстановление базы данных из ldf-файла
|
|||
---|---|---|---|
#18+
Если базу не отсоединили от сервера, выполните Log tail backup . Это и будет ваш бэкап лога. ... |
|||
:
Нравится:
Не нравится:
|
|||
19.03.2020, 16:28 |
|
|
start [/forum/topic.php?fid=46&fpage=65&tid=1686312]: |
0ms |
get settings: |
8ms |
get forum list: |
14ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
35ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
62ms |
get tp. blocked users: |
2ms |
others: | 336ms |
total: | 475ms |
0 / 0 |