Симптоми
Когато SQL Server 2012 или SQL Server 2014 база данни съдържат голям регистрационен файл на транзакция, не можете да възстановите базата данни в Двоичната услуга за съхранение на файлове на Microsoft Azure. Например ако регистрационният файл на транзакцията е толкова голям, че отнема повече от 3 минути, за да го възстановите, не можете да възстановите базата данни. Например: Ако архивирате много голяма база данни в URL адрес и то може да е неуспешно със следното съобщение за грешка:
<дата и час> архивиране: 3041, тежест: 16; щат: 1. <дата и час> архивирането не успя да завърши БАЗАТА данни за архивиране на командата BravoII_AS_PROD с ДИФЕРЕНЦИАЛ. Проверете регистрационния файл на приложението за подробни съобщения. <дата и час> spid55 грешка: 18210, тежест: 16, състояние: 1. <дата и час> spid55 BackupVirtualDeviceFile:: RequestDurableMedia: Flush недостатъчност на Backup Device "https://xxx.blob.core.windows.net/production/yyy.bck". Грешката на операционната система не може да се събере от отдалечената крайна точка.
А ако разрешете флага за проследяване на URL адреси (DBCC TRACEON (3004; 3051; 3212; 3014; 3605; 1816;-1)), е възможно да получите информацията, подобна на следната в backuptoUrL log:
<дата и час>: код на състоянието на HTTP 201, съобщение за състоянието на HTTP, създадено<дата и час>: полезен товар: Start 7319191552, CMD размер 1048576, размер на полезен товар 1048576, начален час 84313,5811126, endtime 84313,6281149, продължителност 47,0023 MS, опити 1, обратно повикване? True<дата и час>: код 20000 на състоянието на HTTP 201, съобщение за състоянието на HTTP, създадено<дата 20000 и час>: IO завършването е променило разрешените успоредни операции на 64, броят на дроселите Делта от 63 нишки е изчислен<дата и час>: изтичането на срока на изчакване на GetCommand време на изчакване на GetCommand, дължина на изчакване от 20000, ще повтори<дата и час>: времето на изчакване в GetCommand, дължината на времето за изчакване на 20000 ще се повтори<>: изтече времето на изчакване на GetCommand, време на изчакване на 20000, след което ще се повтори<дата и час. 20000 , дължина на изчакване от 20000, ще повтори<дата и час>: времето на изчакване на GetCommand, дължината на изчакването на 20000 ще се повтори<дата и час>: изтече времето на GetCommand, дължина на изчакване от 20000, ще повтори<дата и час>: архивиране на комуникацията с SqlServr е неуспешно, HR = 0x80770003<дата и час>: фатална грешка по време на комуникацията на двигателя, информация за изключение следва<дата и час>: информация за изключение: Възникна грешка по време на операции за прехвърляне на данни с помощта на SqlServer, HRESULT: 0x80770003<дата: стек: в Microsoft. SqlServer. VDI. VdiInterface (PerformPageDataTransfer CloudPageBlob, PageBlob AccessCondition, Булева leaseCondition) в ForBackup
Решение
Проблемът е коригиран първо в следващата сборна актуализация на SQL Server.
Кумулативна актуализация 1 за SQL Server 2014 SP1 /en-us/help/3067839
Кумулативна актуализация 6 за SQL Server 2012 SP2 /en-us/help/3052468
Кумулативна актуализация 16 за SQL Server 2012 SP1 /en-us/help/3052476
Сборна актуализация 7 за SQL Server 2014 /en-us/help/3046038
Всяка нова сборна актуализация за SQL Server съдържа всички поправки и всички корекции на защитата, които са били включени в предишната сборна актуализация. Вижте последните сборни актуализации за SQL Server:
Състоянието
Microsoft потвърди, че това е проблем в продуктите на Microsoft, които са посочени в секцията "важи за".