无法打开备份设备-SQL Server本地备份数据库到Azure存储

混杂因素

我有一个在本地SQL Server实例上运行的数据库。我已经设置了一个SQL代理来每晚备份数据库并将其存储在Azure的容器中。但是,作业运行后,我看到以下错误:

Message
Executed as user: NT SERVICE\SQLSERVERAGENT. Cannot open backup device 'https://mystorageaccount.blob.core.windows.net/mystoragecontainer/20200102/MYDATABASE_0.bak'. Operating system error 50(The request is not supported.). [SQLSTATE 42000] (Error 3201)  BACKUP DATABASE is terminating abnormally. [SQLSTATE 42000] (Error 3013)

Azure存储帐户是“存储”(通用v1)。

SQL Server 13.0.5233.0 Microsoft SQL Server管理Studio 14.0.17213.0 Microsoft Analysis Services客户端工具14.0.1016.232 Microsoft数据访问组件(MDAC)10.0.14393.0 Microsoft MSXML 3.0 6.0 Microsoft Internet Explorer 9.11.14393.0 Microsoft .NET Framework 4.0.30319.42000操作系统6.3.14393

有没有一种方法可以配置NT SERVICE \ SQLSERVERAGENT连接到Azure存储容器?

混杂因素

所有评论在一定程度上都是有效的。最后,我修复了使用SAS(共享访问签名)凭据将SQL Server数据库备份到Azure存储容器(松散地使用的术语)的情况。

  1. 删除SQL Server中的现有凭据(在“安全性”>“凭据”下)
  2. 在Azure中,在“存储帐户”>“容器”下创建一个访问策略。定义开始和到期日期/时间,时区以及读,写级别很重要。
  3. 在Azure中,为容器生成SAS令牌。确保您设置适当的开始和到期日期/时间以及时区。不要仅仅依靠UTC。
  4. 将文件上传到容器,以确保一切正常。
  5. 在SQL Server中,创建凭据。机密应该是不带前面的?的SAS令牌,因此只需“ sv = ....”。
IF NOT EXISTS  
(SELECT * FROM sys.credentials   
WHERE name = 'https://mystorageaccount.blob.core.windows.net/mycontainer')  
CREATE CREDENTIAL [https://mystorageaccount.blob.core.windows.net/mycontainer] 
   WITH IDENTITY = 'SHARED ACCESS SIGNATURE',  
   SECRET = 'sv=_my_sas_key_without_?'; 
  1. 备份数据库。URL和容器必须与凭据匹配-在这种情况下,为https://mystorageaccount.blob.core.windows.net/mycontainer
BACKUP DATABASE [mydatabase]   
TO URL = 'https://mystorageaccount.blob.core.windows.net/mycontainer/mydatabase_03012020120400.bak' 
WITH FORMAT,  
COMPRESSION,
STATS=5,
BLOCKSIZE=65536,
MAXTRANSFERSIZE=4194304;
GO 

本文收集自互联网,转载请注明来源。

如有侵权,请联系 [email protected] 删除。

编辑于
0

我来说两句

0 条评论
登录 后参与评论

相关文章

SQL Server 数据库是否需要备份设备来备份数据库?

无法使用 PowerShell 或 T-SQL 将 SQL 数据库备份到 Azure Blob 存储

使用脚本或cmd将SQL SERVER备份数据库转换为.sql文件

Azure SQL 数据库每周自动备份到本地服务器

如何将远程SQL Server数据库备份到本地驱动器?

将SQL Server备份还原到Azure SQL数据库

什么是Azure SQL数据库当前版本?应使用哪个SSMS备份数据库?

移动数据库文件后,SQL Server到Azure的备份停止工作

无法设置Azure SQL数据库长期备份保留

SQL Server 备份到 Azure 存储问题

使用共享访问签名将 SQL Server 数据库备份到 Azure Blob 时出现“解码存储密钥时出错”

创建备份,备份 SQL Server 数据库并将其存储在远程机器上

创建SQL Server数据库备份

mysqldump无法备份数据库

将Azure SQL数据库备份到Recovery Services保管库

SQL Sever Management Studio 2008不允许我备份数据库

SQL Server LocalDB:将数据库分离并重新附加到同一台计算机(计算机,相同路径)后,无法备份数据库

是否可以将SQL Server数据库(或单个表)从备份还原到Databricks Delta表?

SQL Server-数据备份到本地-是否必要

带有SQL Server数据库的Azure VM-备份和文件恢复

SQL Azure,数据库副本的频率和备份策略

Azure SQL数据库备份和还原

SQL Server 2008中的压缩数据库备份

备份SQL Server数据库并将其邮寄

备份数据库数据的方法

尝试从 SQL Server 备份数据时出错

无法从备份文件还原SQL Server数据库-错误:102

用cron备份数据库

从 Postgres 备份数据库