在ddl_command_start上执行CREATE EVIG TRIGGER审计EXECUTE PROCEDURE stat_audit();
结果是:
ERROR: permission denied to create event trigger HINT: Must be superuser to create an event trigger.
据我所知,RDS上最具特权的角色是rds_superuser.我已将rds_superuser授予我的帐户(例如,将rds_superuser授予某个用户;).但我仍然无法创建事件触发器.我知道rds_superuser与pg超级用户的角色不同(可以通过运行:SHOW is_superuser或SELECT * FROM pg_user来确认).
我也理解为什么RDS可能会锁定真正的超级用户权限,但如果我无法访问事件触发器,这似乎是一个非常重要的限制.我错过了什么吗?是否可以在RDS上的Postgres中设置事件触发器?如果没有,是否有任何替代模仿相同的功能?我知道RDS事件通知,但似乎没有任何选项来订阅架构更改事件.
解决方法
Postgresql versions 9.4.9 and later and version 9.5.4 and later
support event triggers,and Amazon RDS supports event triggers for
these versions. The master user account can be used to create,modify,
rename,and delete event triggers. Event triggers are at the DB
instance level,so they can apply to all databases on an instance. For
more @R_948_4045@ion about Postgresql event triggers on Amazon RDS,see
Event Triggers for Postgresql on Amazon RDS.
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。