如何使用本机同步函数从 Amazon Aurora MySQL 数据库集群调用 Lambda 函数

How to invoke a Lambda Function from an Amazon Aurora MySQL DB Cluster using native synchronous function

我创建了一个 Lambda 函数,它将用户名和电子邮件以及 post 那些带到 API。然后,我创建了一个 Aurora MySQL 数据库实例,它将调用该 Lambda 函数。为了调用它,我创建了一个触发器:

Time: AFTER
Event: Insert
Definition: BEGIN
CALL mysql.lambda_async("arn:aws:lambda:eu-west-2:<id-number>:function:user-to-API", CONCAT ('{"user_first_name": "', NEW.first_name, '", "user_email": "', NEW.email, '"}')); 
END
Definer: master_user@%

但是,我想同步执行此操作,只触发一次 lambda 函数。这是可能的with an Aurora MySQL Native Function。但是,我尝试不使用 mysql 部分 - 使用 lambda_sync 并且总是收到相同的错误:MYSQL PROCEDURE mysql.lambda_sync does not existMYSQL PROCEDURE lambda_sync does not exist。有人有这方面的经验吗?

提前感谢您的支持。

使用 SELECTDO 调用本机函数 -- CALL 用于存储过程。

对于在 2018 年 11 月 19 日面临相同问题的每个人,根据 AWS,在 Aurora MySQL 5.7 中创建的数据库集群不支持 mysql.lambda_sync 过程(Aurora MySQL 2.* 版本)。在 Aurora MySQL 2.* 版本中,不支持使用本机函数技术以及 'sync' lambda 过程。他们修改了文档,但仍然令人困惑。然而,在一天结束时,我不得不调用 mysql.lambda_async