当数据库更改时,我需要发送HTTP请求,所以我使用mysqludf扩展。
它在本地工作,但是我怎样才能让它在Amazon上工作呢?如果不可能,我需要一个解决方案来使用MySQL触发器和sys_exec
函数或类似的东西。
有人能帮我吗?
谢谢!
发布于 2016-02-12 13:38:08
绝对不是那么回事。RDS实例通过两种方式被锁定,防止您安装UDF;为了避免与存储的函数混淆,UDF是用C编写并编译的。然后,必须将二进制共享对象文件复制到MySQL服务器的文件系统中,RDS无法访问该文件系统(这是一个文件),您必须拥有SUPER
特权才能从文件中实际加载UDF插件,而RDS不提供该文件(即两个)。
此外,您不能在RDS上使用sys_exec()
或sys_eval()
,因为这些函数不是内置的。它们也是UDF插件。
这是与RDS (或任何“托管”数据库服务器服务,我怀疑)的权衡之一。作为简单性和点击配置的交换,您可以放弃一些东西。
在RDS中,没有一种方法可以做你想做的事情。
发布于 2021-06-22 22:34:53
如果您的最后需求是通过从RDS数据库上的一些sql操作中获取一个触发器来调用一些外部API,那么您可以利用AWS、SNS和lambda来实现这一点。这不是一条笔直的路,而是要达到目的。事实上,我已经使用这个解决方案来满足我的需求之一。您可以找到线程here。
https://stackoverflow.com/questions/35367379
复制