PHP跟踪MySQL数据库的最新更新以推送到Rails应用程序?
我有一个MySQL 5数据库,每5分钟从一个我无法控制的专有数据库更新一次(在编程或数据库访问方面)。MySQL数据库是这个专有数据库的镜像,专有数据库负责更新过程(也就是说,在调用更新过程时我不能添加钩子) 我有另一个完全独立的Rails应用程序,我需要从外部MySQL数据库导入记录(Rails应用程序由PostgreSQL提供支持,远程托管) 所以。。。请原谅这种设置的极端低效性(这是一个过渡中的系统),我需要的是:一个PHP脚本,它可以在MySQL数据库更新时轮询或调用(无论更新是更新记录信息、创建新记录还是删除现有记录等),然后推送该信息(JSON)通过对Rails应用程序的POST请求 我已经编写了一个PHP脚本,可以从MySQL中提取数据并为我的Rails应用程序解析它,但我不知道的是如何(a)让脚本在更新时轮询或调用,或者(b)如何告诉它只查找最新的更改(自上次调查以来,请记住可能有多条记录被更改/创建/删除) 有人能对此提出建议吗PHP跟踪MySQL数据库的最新更新以推送到Rails应用程序?,php,mysql,ruby-on-rails,Php,Mysql,Ruby On Rails,我有一个MySQL 5数据库,每5分钟从一个我无法控制的专有数据库更新一次(在编程或数据库访问方面)。MySQL数据库是这个专有数据库的镜像,专有数据库负责更新过程(也就是说,在调用更新过程时我不能添加钩子) 我有另一个完全独立的Rails应用程序,我需要从外部MySQL数据库导入记录(Rails应用程序由PostgreSQL提供支持,远程托管) 所以。。。请原谅这种设置的极端低效性(这是一个过渡中的系统),我需要的是:一个PHP脚本,它可以在MySQL数据库更新时轮询或调用(无论更新是更新记录
作为一个必然的问题,如果有人知道如何跳过PHP并直接从Rails到外部MySQL数据库执行相同的过程,我(显然)更喜欢这种方法。不过,为了至少获得一个可行的解决方案,我很乐意接受Rails或PHP解决方案。以下是一种在Rails中实现这一切的方法: 设置一个每五分钟启动一次的cron作业。它要么运行rake任务,要么在Rails应用程序中运行curl的某个URL(最好包含一个安全令牌,只是为了更好的衡量)。我更喜欢后者——它更简单,并且不启动新的进程 cron作业触发的操作可以查看每个表中的created_at列,并确定哪些记录可能是新的。对于created_at确定的潜在新记录,请检查它们是否确实是新的,如果是,请将它们写入PostgreSQL DB。检查记录是否是新的有两种方法: