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

时间:2018-11-21 19:55:01

标签: mysql linux mariadb

将记录添加到表中后,我需要发送电子邮件。

一堆谷歌搜索给我留下了唯一的选择是“不好”和“真的很糟糕”的印象,并且想知道是否有人有任何干净,可靠,可靠的建议。

到目前为止,我已经发现:

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

  • 从外部程序定期轮询表,查找更改并发送邮件(如果适用)。几乎可以,但是我宁愿跳过要添加的记录与下一次轮询之间的停滞时间。

我曾考虑过使用SELECT ... OUTFILE,但这确实受到限制,因为它不会覆盖输出文件,并且更改文件名的唯一方法是通过使用动态SQL构建查询,该查询无法使用在触发器内。

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

感觉我必须在这里丢失一些东西。

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

有人能以一种干净,低开销的方式来做到这一点吗?

1 个答案:

答案 0 :(得分:1)

修改添加记录的代码并使它执行通知。如果将其放在try / catch块中,您将确定是否成功添加了记录。