当mysql/mariadb表更新时,以干净、低开销的方式发送电子邮件



当记录被添加到表中时,我需要发送一封电子邮件。

一堆谷歌搜索给我的印象是,唯一的选择是"糟糕"one_answers"真的很糟糕",我想知道是否有人有任何干净、可靠的建议。

到目前为止,我发现:

  • 使用发送邮件的mysql插件。我宁愿不这样做,因为我有一个非常好的邮件服务器,而且数据库不是为发送邮件而设计的。

  • 从外部程序定期轮询表,查找更改并在适当的情况下发送邮件。这几乎可以,但我宁愿跳过添加记录和下一次投票之间的死区时间。

我曾考虑过使用SELECT。。。然而,OUTFILE实际上是有限的,因为它不会覆盖输出文件,并且更改文件名的唯一方法是使用动态SQL构建查询,而动态SQL不能在触发器中使用。

我可以编写一个套接字侦听器,让Mysql打开套接字,告诉邮件应用程序有记录在等待,但似乎没有办法从Mysql打开套接字。

感觉我一定错过了什么。

我只想在添加记录时运行一个外部应用程序。

有没有人用一种干净、低开销的方式来做这件事?

修改添加记录的代码并让它执行通知。如果你把它放在一个try/catch块中,你就会确定记录是否被成功添加。

在感兴趣的表上触发以插入其他表(电子邮件队列(。创建一个计划进程来处理另一个表。

相关内容

最新更新