如何在不同的mysql服务器上更新另一个表时自动更新表?

时间:2012-12-18 10:31:56

标签: php mysql triggers cron sql-update

假设我有两个数据库'db1'和& 'db2'在不同的mysql服务器'A'和'分别是'B'。

如果在'db2'中的'table1'中找到任何更新,我想每6小时检查一次,然后'db1'中的'table1'将自动更新。

如何使用触发器或cron作业执行此操作?什么时候被解雇?

2 个答案:

答案 0 :(得分:0)

你可以使用cron作业,只需每分钟运行一个php文件。

此文件可以检查db2中table1中的新行(保存文本文件中的当前行数以进行比较,如果新计数>旧计数,则可以更新db1中的table1。

但是@Charles的mysql复制在评论中说会更好。

答案 1 :(得分:0)

我接受了kutF的答案,然后运行该程序在mysql中创建表时使用关键字CASCADE。因此,如果更新父表,则子表也会更新

CREATE TABLE parent
(
par_id INT NOT NULL,
PRIMARY KEY (par_id)
) TYPE = INNODB;

CREATE TABLE child
(
par_id INT NOT NULL,
child_id INT NOT NULL,
PRIMARY KEY (child_id),
FOREIGN KEY (par_id) REFERENCES parent (par_id) ON DELETE CASCADE
) TYPE = INNODB;