MySQL复制间歇性失败,从tmp表插入时未找到HA_ERR_KEY_

MySQL复制间歇性失败,从tmp表插入时未找到HA_ERR_KEY_,mysql,sql,amazon-rds,Mysql,Sql,Amazon Rds,我在AWS RDS上运行mysql 5.6。我还有一个mysql从服务器,通过RDS中的readreplica。在运行从临时表插入到非临时表的存储过程时,复制到从机会出错 我对mysql文档的理解是,只要我们使用混合模式binlogging(我们这样做),就可以处理这种情况 这是mysql错误还是我遗漏了什么?在使用mysql从属服务器时,是否根本不支持这种方法 导致问题的存储进程正在执行类似的操作,其中MySummaryTable是非临时表,tmp_locations_表是临时表: CREAT

我在AWS RDS上运行mysql 5.6。我还有一个mysql从服务器,通过RDS中的readreplica。在运行从临时表插入到非临时表的存储过程时,复制到从机会出错

我对mysql文档的理解是,只要我们使用混合模式binlogging(我们这样做),就可以处理这种情况

这是mysql错误还是我遗漏了什么?在使用mysql从属服务器时,是否根本不支持这种方法

导致问题的存储进程正在执行类似的操作,其中MySummaryTable是非临时表,tmp_locations_表是临时表:

CREATE TEMPORARY TABLE tmp_locations_table

INSERT INTO MySummaryTable (
  accountID,
  locationID
)
SELECT
  row_data.accountID,
  row_data.locationID
FROM tmp_locations_table row_data
GROUP BY
  row_data.accountID,
  row_data.locationID
ON DUPLICATE KEY UPDATE
  locationID=123

我看到的确切的mysql错误并不是特别有用:无法在表myschema.MySummaryTable上执行Update_rows事件;在“MySummaryTable”中找不到记录,错误代码:1032;未找到处理程序错误HA_ERR_KEY_;事件的主日志blahblahblah

只要binlog格式为混合或行,并且表为InnoDB,那么场景本身就没有问题,但是您是否验证了MySummaryTable当前在主和从上包含相同的数据?如果不是,那就是要解决的第一个问题,因为复制需要相同的数据集来处理复制涉及的任何内容。