是否有任何方法来轮询使用JDBC进行的MySQL数据库更改?我需要确切的变化发生了(不是一个简单的是/否)。
我尝试使用每15秒执行一次的线程来检查我的数据库是否被更改。
查询直接从MySQLworkbench / cli执行
我需要执行java函数,这在SQL触发器中是不可能的。
发布于 2018-03-07 18:47:19
无法通过SQL提取更改。但是,您可以像MySQL奴隶一样读取二进制日志(请确保它已启用)。因此,您需要使用类似于mysql-binlog-连接器-java的东西,而不是使用JDBC。
对于所有的RDBMS来说,基本思想是一样的:您充当一个奴隶并接收更改。一个真正的奴隶会应用这些更改来获得主数据的确切副本,但是实际上,一旦您得到了这些更改,您可以对它们做任何您想做的事情。
但是,每个数据库都以不同的方式实现复制,因此没有通用的工具可以这样做。如果您需要从Oracle获得更改,则需要为此目的找到一个特定的库。
https://dba.stackexchange.com/questions/199632
复制相似问题