Backup to URL fails with nonrecoverable I/O error 3271 in SQL Server
This article helps you resolve the
nonrecoverable I/O error that occurs when you use the Backup Database to URL command in SQL Server.
Original product version: SQL Server 2012 Enterprise, SQL Server 2014 Enterprise, SQL Server 2014 Enterprise
Original KB number: 3177997
You try to back up a database on your Azure-based SQL Server virtual machine (IaaS) by using the Backup Database to URL command. However, the attempt fails with the following error:
Msg 3271, Level 16, State 1, Line 7
A nonrecoverable I/O error occurred on file "https://sqlbakurl.blob.core.windows.net/backupcontainer/demodb.bak:" Backup to URL received an exception from the remote endpoint.
Exception Message: The remote server returned an error: (400) Bad Request.
Msg 3013, Level 16, State 1, Line 7
BACKUP DATABASE is terminating abnormally.
This issue occurs if the storage account that you're trying to back up to was created with the Account Kind setting set to Blob. The Account Kind setting should be General Purpose.
To resolve this issue, create a new storage account, and specify General Purpose for the Account Kind setting. Also, designate a container in this storage account for backup to URL.
When the account kind is set to General Purpose, this provides support for page blob files. SQL Server backup uses page blobs as the Blob type. For more information, see SQL Server backup and restore with Windows Azure Blob Storage Service.