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

如何通过IAM策略为RDS用户授予创建Schema权限?

RDS创建Schema权限问题解答

结论

无法通过IAM策略授予RDS数据库内部的创建Schema权限。

原因

IAM策略仅管控AWS服务层面的操作权限(比如创建、修改RDS实例),而创建Schema、数据库对象权限这类属于数据库引擎自身的权限体系(如PostgreSQL/MySQL的内部权限系统),两者是完全独立的权限控制维度。你遇到的ERROR: permission denied for database {database name}错误是数据库引擎返回的内部权限不足问题,IAM策略无法干预这类验证逻辑。

正确解决步骤

必须通过数据库管理员账号(如PostgreSQL的postgres、MySQL的root)执行数据库内部授权语句:

  • 若使用PostgreSQL:
    GRANT CREATE ON DATABASE {database name} TO {rds_user};
    
  • 若使用MySQL(Schema等价于Database):
    -- 授予全局创建数据库权限
    GRANT CREATE ON *.* TO {rds_user};
    -- 或仅授予指定数据库的操作权限
    GRANT ALL PRIVILEGES ON {database name}.* TO {rds_user};
    

补充说明

你查阅的文档是关于RDS安全组 ingress 授权的,属于网络访问控制范畴,和数据库内部权限无关,因此找不到对应内容。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.06.20 20:12:03