Symptômes
Si une base de données SQL Server 2012 ou SQL Server 2014 contient un grand fichier journal des transactions, vous ne pouvez pas restaurer la base de données dans le service de stockage d’objets BLOB Microsoft Azure. Par exemple, si le fichier journal des transactions est tellement volumineux qu’il faut plus de 3 minutes pour le restaurer, vous ne pouvez pas restaurer la base de données. Par exemple : Si vous procédez à la sauvegarde d’une base de données de très grande taille dans l’URL, il est possible que le message d’erreur suivant s’affiche :
<DateHeure> erreur de sauvegarde : 3041, gravité : 16, État : 1. <DateTime> sauvegarde de sauvegarde n’a pas réussi à exécuter la commande de base de données de sauvegarde BravoII_AS_PROD avec différentielle. Pour plus d’informations, consultez le journal des applications de sauvegarde. <DateHeure> erreur : 18210, gravité : 16, État : 1. <DateTime> spid55 BackupVirtualDeviceFile :: RequestDurableMedia : Flush Failure sur l’appareil de sauvegarde « https://xxx.blob.core.windows.net/production/yyy.bck ». Erreur « système d’exploitation » n’a pas pu être collectée depuis un point de terminaison distant.
Et si vous activez l’indicateur de suivi d’URL (DBCC trace (3004, 3051, 3212, 3014, 3605, 1816,-1)), vous risquez de recevoir les informations qui ressemble à ce qui suit dans backuptoUrL journal :
<DateTime> : code d’état HTTP 201, message d’état HTTP créé<DateTime> : Payload : Start 7319191552, size 1048576, taille de la charge utile 1048576, StartTime 84313,5811126, heure_fin 84313,6281149, durée 47,0023 ms, tentatives 1, le rappel exécuté ? True<DateTime> : code d’état HTTP 201, message d’état HTTP créé<DateTime> : la saisie semi-automatique a changé les opérations parallèles autorisées en 64, le nombre de limitations de 63 threads a été calculé<DateTime> : un délai d’expiration s’est produit sur GetCommand 20000, délai d’expiration de 20000, réessayer<DateHeure> : un délai d’expiration s’est produit sur GetCommand, délai d’expiration de 20000, réessayer<datetime> : un délai d’expiration s’est produit sur GetCommand, le délai d’expiration de 20000, réessayer<datetime> : un délai d’expiration s’est produit dans GetCommand, délai d’expiration de 20000, réessayer<DateTime> : un délai d’expiration s’est produit sur GetCommand 20000 , la durée du délai d’expiration de 20000, réessayer<DateTime> : un délai d’expiration s’est produit sur GetCommand, délai d’expiration de 20000, réessayer<DateTime> : un délai d’expiration s’est produit sur GetCommand, délai d’expiration de 20000, réessayer<DateTime> : échec de la communication avec SqlServr. hr = 0x80770003<DateTime> : une erreur irrécupérable s’est produite lors de la communication du moteur, les informations sur les exceptions suivent<DateTime> : informations sur les exceptions : une erreur s’est produite pendant les opérations de transfert de données avec SqlServer, HRESULT : 0x80770003<DateTime> : Stack : à Microsoft. SqlServer. VdiInterface. VDI. PerformPageDataTransfer (CloudPageBlob pageBlob AccessCondition leaseCondition ForBackup, booléen BackupToUrl)
Résolution
Le problème a été résolu dans la mise à jour cumulative suivante de SQL Server.
Mise à jour cumulative 1 pour SQL Server 2014 SP1 /en-us/help/3067839
Mise à jour cumulative 6 pour SQL Server 2012 SP2 /en-us/help/3052468
Mise à jour cumulative 16 pour SQL Server 2012 SP1 /en-us/help/3052476
Mise à jour cumulative 7 pour SQL Server 2014 /en-us/help/3046038
Chaque nouvelle mise à jour cumulative pour SQL Server contient tous les correctifs et les correctifs de sécurité inclus dans la mise à jour cumulative précédente. Consultez les dernières mises à jour cumulatives pour SQL Server :
Statut
Microsoft a confirmé l'existence de ce problème dans les produits Microsoft figurant dans la liste des produits concernés par cet article.