症状
请考虑使用 SQL Server备份数据库命令或托管备份将数据库备份到 URL (Azure blob)。 如果备份非常大,则 SQL Server 和 Azure Blob 存储服务之间的某些请求可能超时,并且备份操作可能失败。 此外,你会收到一条1810错误消息,类似于 SQL Server 错误日志文件中的以下内容:
日期时间 备份错误:18210,严重级别:16,状态:1。 日期时间 Backup BackupIoRequest:: ReportIoError:备份设备 "https://xxxx.blob.core.windows.net/xxx/full/xxxx_FULL_20170211_230001.bak" 上的写入失败。 从远程终结点到 URL 的操作系统备份时收到异常。 异常消息:客户端无法在指定超时内完成操作。 日期时间 备份错误:3041,严重级别:16,状态:1。 日期时间 备份备份无法完成命令备份数据库 mydbname。 检查备份应用程序日志,了解详细消息。
原因
出现此问题的原因是,对 Azure blob 的 i/o 操作的超时值不够长。 此修复将 "超时" 值更改为较长的弹性值,以避免 i/o 操作的超时频率。
解决方案
在 SQL Server 的以下累积更新中修复了此问题:
SQL Server 的每个新的累积更新包含以前的累积更新中包含的所有修补程序和安全修补程序。 查看 SQL Server 的最新累积更新:
状态
Microsoft 已确认这是在“适用范围”部分中列出的 Microsoft 产品存在的问题。
参考
了解 Microsoft 用于描述软件更新的 术语 。