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

将Azure SQL bacpac恢复至AWS RDS SQL Server时遇权限错误求助

问题原因及解决办法

原因

AWS RDS SQL Server是托管式数据库服务,BACKUP DATABASE和BACKUP LOG权限由AWS统一管控,任何用户(包括主用户)都无法手动执行GRANT/REVOKE这类权限的操作。你的bacpac备份文件里包含了原Azure SQL数据库的权限配置脚本,其中的REVOKE BACKUP DATABASE TO [xxxx] CASCADE;语句触发了RDS内置的rds_deny_backups_trigger触发器,直接拦截了这个操作,导致报错。

解决步骤

  • 把bacpac文件的后缀改成.zip,解压到本地文件夹
  • 找到解压后DacMetadata\Scripts目录下的SQL脚本文件,或者打开根目录的model.xml(用文本编辑器),搜索所有包含GRANT BACKUP、REVOKE BACKUP的语句,全部删除
  • 把修改后的文件按原目录结构重新打包成zip,再将后缀改回.bacpac
  • 使用修改后的bacpac文件重新导入AWS RDS SQL Server

注意:RDS的备份功能通过AWS控制台或CLI配置即可,无需在数据库层面手动设置备份权限,移除这些语句不会影响数据库正常使用。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.21 13:07:04