You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何搭配SAS令牌使用Backup-SqlDatabase完成SQL数据库备份?

问题解决方案

Backup-SqlDatabase 本身支持使用SAS令牌备份到Azure存储,你遇到的两个报错都是配置方式错误导致的,对应解决方法如下:

报错原因说明

  • 第一个传入SqlCredential参数的报错:该参数仅适配使用存储账户访问密钥创建的SQL凭证,包含SAS签名的凭证不支持通过WITH CREDENTIAL语法调用,因此直接传SqlCredential会触发校验错误。
  • 第二个不传入SqlCredential参数的报错:SQL实例没有提前配置对应Azure存储容器的SAS凭证,无法识别Blob存储URL作为合法的备份目标路径。

具体操作步骤

  1. 先在你要备份的SQL实例中创建对应Azure Blob容器的SAS凭证,凭证名称必须和容器的完整URL完全一致,示例T-SQL代码如下:
CREATE CREDENTIAL [https://<你的存储账户名>.blob.core.windows.net/<你的容器名>]
WITH IDENTITY = 'SHARED ACCESS SIGNATURE',
SECRET = '<你的SAS令牌,注意去掉开头的?符号>';
  1. 调用Backup-SqlDatabase时不需要传入SqlCredential参数,直接指定备份文件的完整Blob路径即可,示例命令如下:
Backup-SqlDatabase -ServerInstance "你的SQL实例名" -Database "Test123" -BackupFile "https://xxxxdev.blob.core.windows.net/<你的容器名>/Test123_backup.bak"

注意事项

  • 所用的SAS令牌需要具备对应容器的读取、写入、列出权限,过期时间需要覆盖备份操作的完整周期
  • 仅SQL Server 2016及以上版本支持直接备份到Azure Blob存储使用SAS认证,更低版本无法使用该方案
  • 如果需要批量备份,可以提前批量创建对应多个容器的SAS凭证,后续调用命令时无需重复配置

内容的提问来源于stack exchange,提问作者Cataster

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.10.03 13:24:03