Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/63.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Mysql 使用基于语句的复制的触发器中的当前\u时间戳_Mysql_Timestamp_Database Trigger_Database Cluster - Fatal编程技术网

Mysql 使用基于语句的复制的触发器中的当前\u时间戳

Mysql 使用基于语句的复制的触发器中的当前\u时间戳,mysql,timestamp,database-trigger,database-cluster,Mysql,Timestamp,Database Trigger,Database Cluster,我们目前在MySQL数据库上使用一个触发器,将“上次修改”时间戳设置为CURRENT\u timestamp。它在更新时被调用 我们还需要对集群使用基于语句的复制 是否有办法修改触发器,使每个集群实例上传播的当前\u时间戳相同 当前,基于语句的复制为每个集群实例调用该语句,导致时间戳略有不同。您必须切换到混合binlog格式,以便在binlog中不仅保存语句,还保存非确定性写入的数据 您可以通过以下方式在不中断服务的情况下做到这一点: SET GLOBAL binlog_format = 'MI

我们目前在MySQL数据库上使用一个触发器,将“上次修改”时间戳设置为
CURRENT\u timestamp
。它在更新时被调用

我们还需要对集群使用基于语句的复制

是否有办法修改触发器,使每个集群实例上传播的
当前\u时间戳
相同


当前,基于语句的复制为每个集群实例调用该语句,导致时间戳略有不同。

您必须切换到混合binlog格式,以便在binlog中不仅保存语句,还保存非确定性写入的数据

您可以通过以下方式在不中断服务的情况下做到这一点:

SET GLOBAL binlog_format = 'MIXED';

在生成binlog的主服务器上。

您使用的是哪一个?“SQL”只是一种查询语言,而不是特定数据库产品的名称,并且数据库触发器高度特定于供应商。请为您正在使用的数据库产品添加一个标记,
postgresql
oracle
sqlserver
db2
,…也许?我们使用的是Mysql数据库。我想既然触发器是由所有sql数据库实现的,那么这些信息就足够了,对不起。