从tmp表插入时,MySQL Replication会间歇性地使用HA_ERR_KEY_NOT_FOUND失败

时间:2014-07-30 18:28:21

标签: mysql sql amazon-rds

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

我对mysql文档的阅读是只要我们使用混合模式binlogging(我们这样做)就会处理这种情况。 http://dev.mysql.com/doc/refman/5.6/en/binary-log-mixed.html

这是一个mysql错误还是我错过了什么?使用mysql从属时,这种方法是否不受支持?

导致问题的存储过程是这样的,其中MySummaryTable是非临时表,而tmp_locations_table是临时表:

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_NOT_FOUND;事件的主日志blahblahblah

0 个答案:

没有答案