我有一个由不同应用程序更新的 MySQL 数据库,我想从我的 Node.js 服务器订阅该数据库的更改。是否可以监视数据库的任何更新,而无需长时间轮询所有行/列以了解其值的任何更改?
我见过的一种可能的解决方案是使用 Redis 订阅数据库以侦听任何更改,然后通知我的客户端(在本例中将是我的服务器)。如果可能的话,如何将 Redis 订阅到 MySQL 数据库?
你能不能只添加一个updated
列到您的表格中?
你可以添加ON UPDATE CURRENT_TIMESTAMP
在列上,每次更新该行时,该列都会自动存储当前时间。该规则应用于数据库本身,因此您无需更新任何使用该数据库的其他客户端,它会自动工作。
然后,任何客户端都可以根据上次检查更新的时间进行查询。你只需要SELECT
基于其的行updated
field.
这样您只需检查一列,而且查询速度相当快。
您也可以索引日期时间字段,显然。这可能确实会使查询变得非常快。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)