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

Azure SQL数据库离线备份至.bacpac的低影响方案及全量备份查询

查看Azure SQL每周全量自动备份

Azure SQL的自动全量备份会按服务层级保留对应时长(Basic层级7天,Standard/Premium层级35天),你可以通过以下方式找到一周前的全量备份:

  • Azure门户操作:进入目标Azure SQL数据库,左侧菜单选择「备份」,切换到「自动备份」标签页,即可看到全量、差异、日志备份的完整列表。通过时间筛选器定位一周前的全量备份条目。
  • Azure CLI命令:执行以下命令过滤全量备份:
    az sql db restore show-backups --resource-group <你的资源组名> --server <你的SQL服务器名> --database <你的数据库名> --backup-type Full
    
    输出结果会包含备份的时间戳、类型等信息,找到对应一周前的记录即可。
  • PowerShell命令:通过以下命令列出所有全量备份点:
    Get-AzSqlDatabaseRestorePoint -ResourceGroupName <你的资源组名> -ServerName <你的SQL服务器名> -DatabaseName <你的数据库名> | Where-Object {$_.RestorePointType -eq 'Full'}
    
    从结果中匹配一周前的备份时间点。
生成Bacpac文件且不影响在线性能的最佳方法

针对导出时DTU突增影响主库的问题,推荐以下几种低影响方案:

  • 基于只读副本导出
    1. 为你的主库创建只读副本(需Standard/Premium层级支持),副本与主库同步但仅提供只读访问,导出操作完全在副本上执行,不会消耗主库资源。
    2. 使用az sql export指定副本数据库,或用SqlPackage工具连接副本端点:
      az sql export --resource-group <你的资源组名> --server <你的SQL服务器名> --database <副本数据库名> --storage-key-type StorageAccessKey --storage-key <Azure存储密钥> --storage-uri "https://<存储账户名>.blob.core.windows.net/<容器名>/<备份文件名>.bacpac"
      
  • 使用SqlPackage工具本地导出
    下载SqlPackage.exe,连接到只读副本执行导出,可自主控制导出速率,避免瞬间占用过多资源。导出到本地后再上传至其他云服务:
    SqlPackage.exe /Action:Export /SourceServerName:<你的SQL服务器名>.database.windows.net /SourceDatabaseName:<副本数据库名> /SourceUser:<管理员账户> /SourcePassword:<密码> /TargetFile:"C:\backups\<备份文件名>.bacpac"
    
  • 迁移至第三方云存储
    导出完成后,使用对应云服务的CLI工具上传文件:
    • 上传至AWS S3:aws s3 cp <本地bacpac路径> s3://<你的S3桶名>/backups/
    • 上传至阿里云OSS:ossutil cp <本地bacpac路径> oss://<你的OSS桶名>/backups/

注意:导出前需确保副本数据已同步完成,大数据库导出建议选择业务低峰期执行,避免副本同步压力过大。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.30 10:22:15