dbd::mysql与test_multi_sets()

  slave有冲突,一个存储过程test_multi_sets(),创建时报已经存在了。结果slave的sql thread就停了。解决冲突之后,找不到是谁建的这个存储过程。最终发现是dbd::mysql安装时偷偷建的,在test库下建了这个存储过程。

  今天装innotop来着,需要dbd::mysql,在主从都装了,结果就出这问题了。

  看dbd::mysql的安装包里找到
  Test($state or $dbh->do("drop procedure if exists test_multi_sets")) or
  DbiError($dbh->err, $dbh->errstr);

  好像是在make test时用到的。感觉有些稍欠严谨,至少建完了应该负责删除才好。小动作害得slave发生冲突。