在MySQL数据库插入上执行C程序

在MySQL数据库插入上执行C程序,c,C,我想知道如何为Linux Ubuntu设计这样一个程序。本质上,我设想了一个在Linux机器上连续运行的小程序,监听MySQL数据库表插入指定的特定表。当程序检测到数据库中插入了一行时,它将执行一个C程序(该程序目前通过cd'ing到目录并在终端中键入“/simulator”来运行)。我想知道如何实现这样的功能 我尝试过用MySQL触发器来实现这一点,比如,但我不确定如何安装LIB_MYSQLUDF_SYS(我遇到了很多错误) 如果有人能提出一种简单而直接的方法来实现这一点,我将不胜感激。另一种

我想知道如何为Linux Ubuntu设计这样一个程序。本质上,我设想了一个在Linux机器上连续运行的小程序,监听MySQL数据库表插入指定的特定表。当程序检测到数据库中插入了一行时,它将执行一个C程序(该程序目前通过cd'ing到目录并在终端中键入“/simulator”来运行)。我想知道如何实现这样的功能

我尝试过用MySQL触发器来实现这一点,比如,但我不确定如何安装LIB_MYSQLUDF_SYS(我遇到了很多错误)


如果有人能提出一种简单而直接的方法来实现这一点,我将不胜感激。

另一种方法是,我在插入数据库后立即使用PHP
exec
函数调用服务器端C程序来实现这一点。这种方法很有效,因为我同时插入数据库选项卡并从中读取数据le.

对于其他人来说,udf库似乎确实可以工作,我建议你尝试让它工作。但是我们需要更多的信息而不是“很多错误”来帮助你。我找不到关于如何安装库的详细说明,我只是把所有文件放在一个目录中,然后键入“sudo make”。我得到的错误是
gcc-Wall-I/usr/include/mysql-I.-shared lib_mysqludf_sys.c-o/usr/lib/lib_mysqludf_sys.so/usr/bin/ld:/tmp/cck1TT89.o:在创建共享对象时不能使用.rodata重新定位R_X86_64_32;用-fPIC重新编译
。我研究过使用gcc-fPIC,但我确实知道如何使用它。同样的博客p在注释中,当编译64位时,您链接到的年龄为这些已知问题提供了一个解决方案。我按照建议将-fPIC添加到生成文件中,并且我能够在没有任何错误的情况下生成。太棒了:-)使用新的udf玩得开心