Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 От чего может долго происходить восстановление бэкапа ?  [new]
stavgreengo
Member

Откуда:
Сообщений: 710
Microsoft SQL Server 2008 R2 (SP2) - 10.50.4290.0 (X64) Aug 5 2013 12:40:54 Copyright (c) Microsoft Corporation Enterprise Edition (64-bit) on Windows NT 6.1 <X64> (Build 7601: Service Pack 1)

RESTORE VERIFYONLY FROM DISK = N'D:\MSSQLBackup\ProdControlVA_backup_2013_12_01_003005_4282648.bak'

Возвращает
Резервный набор данных для файла 1 правильный.

При реальном восстановлении доходит до 100% за 20 мин., доходит и думает без окончания восстановления уже 1,5часа. Попробовал восстановить на другом точно таком же сервере, результат аналогичен. И причём это уже третий бэкап и все ведут себя именно таким образом. Уже и не знаю что думать и стоит ли ждать вообще, а главное почему они себя так ведут и не туда и не сюда, ни в ошибку не сваливаются, ни завершиться не могут ???
2 дек 13, 12:07    [15223973]     Ответить | Цитировать Сообщить модератору
 Re: От чего может долго происходить восстановление бэкапа ?  [new]
NickAlex66
Member

Откуда:
Сообщений: 319
stavgreengo,

Скорее всего в этом бэкапе длинная не завершенная транзакция. Может даже не одна. Вот ини и откатываются.
2 дек 13, 12:42    [15224271]     Ответить | Цитировать Сообщить модератору
 Re: От чего может долго происходить восстановление бэкапа ?  [new]
Glory
Member

Откуда:
Сообщений: 104760
stavgreengo
При реальном восстановлении доходит до 100% за 20 мин.,

Это вы где наблюдаете ?

stavgreengo
доходит и думает без окончания восстановления уже 1,5часа.

Статус конекта какой ?
2 дек 13, 12:44    [15224287]     Ответить | Цитировать Сообщить модератору
 Re: От чего может долго происходить восстановление бэкапа ?  [new]
Glory
Member

Откуда:
Сообщений: 104760
NickAlex66
Скорее всего в этом бэкапе длинная не завершенная транзакция. Может даже не одна. Вот ини и откатываются.

И давно в бэкапах стали храниться незавершенные транзакции ?
2 дек 13, 12:49    [15224338]     Ответить | Цитировать Сообщить модератору
 Re: От чего может долго происходить восстановление бэкапа ?  [new]
stavgreengo
Member

Откуда:
Сообщений: 710
Glory
stavgreengo
При реальном восстановлении доходит до 100% за 20 мин.,

Это вы где наблюдаете ?

stavgreengo
доходит и думает без окончания восстановления уже 1,5часа.

Статус конекта какой ?

Наблюдаю в GUI SSMS в диалоге восстановления БД. Статус конекта SUSPENDED. CPU time 2264648. IO 50
2 дек 13, 12:52    [15224380]     Ответить | Цитировать Сообщить модератору
 Re: От чего может долго происходить восстановление бэкапа ?  [new]
Glory
Member

Откуда:
Сообщений: 104760
stavgreengo
Наблюдаю в GUI SSMS в диалоге восстановления БД.

А в логе сервера что ?
2 дек 13, 13:10    [15224549]     Ответить | Цитировать Сообщить модератору
 Re: От чего может долго происходить восстановление бэкапа ?  [new]
o-o
Guest
Glory
NickAlex66
Скорее всего в этом бэкапе длинная не завершенная транзакция. Может даже не одна. Вот ини и откатываются.

И давно в бэкапах стали храниться незавершенные транзакции ?


интересно, если ДО начала полного бэкапа кто-то начал опупительно длинную транзакцию,
к-ая не завершилась даже к окончанию бэкапа, а бэкап первым делом запустил чекпойнт,
то страницы, модифицированные той транзакцией, в бэкап запишутся.
как потом получить консистентную базу после рестора, если не записать в полный бэкап записи из лога,
начиная с относящихся к той, начатой _до_бэкапа_, транзакции?
что, правда что-ли не будет эта транзакция откачена по завершению рестора? "не верю!" (c)
щас нарою пруф на инглише.
2 дек 13, 13:19    [15224626]     Ответить | Цитировать Сообщить модератору
 Re: От чего может долго происходить восстановление бэкапа ?  [new]
stavgreengo
Member

Откуда:
Сообщений: 710
Glory
stavgreengo
Наблюдаю в GUI SSMS в диалоге восстановления БД.

А в логе сервера что ?

The database 'ProdControlVA' is marked RESTORING and is in a state that does not allow recovery to be run.
2 дек 13, 13:33    [15224796]     Ответить | Цитировать Сообщить модератору
 Re: От чего может долго происходить восстановление бэкапа ?  [new]
NickAlex66
Member

Откуда:
Сообщений: 319
Glory
NickAlex66
Скорее всего в этом бэкапе длинная не завершенная транзакция. Может даже не одна. Вот ини и откатываются.

И давно в бэкапах стали храниться незавершенные транзакции ?


Если мне не изменяет память, то с прошлого века :) Куда же без них - незавершенных транзакций.
В бекап пишутся не только страницы данных, но и активные, на момент проведения бэкапа, записи лога.
Из них сервер узнает при ресторе о состоянии транзакций и применяет единственную стратегию: при опции RESTORE WITH RECOVERY - redo and undo (откат), при RESTORE WITH NORECOVERY - только redo.
Косвенное подтверждение: если ТС восстановит базу с RESTORE WITH NORECOVERY, то рестор будет быстрее, но база будет в оффлайне.
2 дек 13, 13:33    [15224802]     Ответить | Цитировать Сообщить модератору
 Re: От чего может долго происходить восстановление бэкапа ?  [new]
o-o
Guest
обещанное
Understanding SQL Server Backups by Paul S. Randal

Another misconception about full backups is that they only contain data. Both full backups and differential backups also contain some transaction log records so that the restored component (database, file, or filegroup) can be made transactionally consistent.
Consider an example transaction that inserts a record into a table with a single nonclustered index. The pages of the table and index are spread through the data file. The transaction is split into two parts internally: a record insertion into a data page in the table and then the insertion of the required record in an index page in the nonclustered index. If the backup process just happens to read the nonclustered index page before the record insertion, but reads the table data page after the record insertion, then the database represented by just the data in the backup is transactionally inconsistent.
This is where the transaction log comes into play. By also including some transaction log records in the backup, recovery can be run on the restored copy of the database, making it transactionally consistent. For this example transaction, depending on when it commits, the recovery part of restore may roll it forward (meaning it will appear as committed in the restored copy of the database) or roll it back (meaning it will not appear at all in the restored copy of the database). In either case, transactional consistency is maintained, which is crucial.
2 дек 13, 13:37    [15224852]     Ответить | Цитировать Сообщить модератору
 Re: От чего может долго происходить восстановление бэкапа ?  [new]
stavgreengo
Member

Откуда:
Сообщений: 710
Чуть больше 3 часов восстанавливалась, причина всей этой конетели незакрытая тяжёлая транзакция. Спасибо всем, коллеги !!!
2 дек 13, 17:50    [15227334]     Ответить | Цитировать Сообщить модератору
 Re: От чего может долго происходить восстановление бэкапа ?  [new]
o-o
Guest
+
stavgreengo
причина всей этой конетели


жуть, товарищи.
канитель.
иначе смахивает на коней и телят одновременно.
а вообще, отражает суть: зверинец повсюду
2 дек 13, 17:58    [15227384]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить