数据同步时过滤掉临时表(转)

找到了一个解决方案(待验证)  因为问题没有重现
此方案是想通过过滤掉临时表来解决复制临时表报错的问题
在mysql  my.ini中 [mysqld] 下配参数 replicate-wild-ignore-table=数据库名.temp%
------------
问题:
自从使用数据库同步复制技术以来同步的异常中断就一直没有有效解决,销售单中的“商品展示”存储过程P_SPXX_GYCX,中使用的临时表temp_yd经常成为同步中断的原因,系统报错信息几乎始终是:
Slave: Error 'Table 'octopus.temp_yd' doesn't exist' on query. Default database: 'octopus'. Query: 'insert into temp_yd  select ifNull(sum(IFNULL(mx.`SPSL`,0.00)),0.00),xsd.`SPZTID`,mx.`SPID`  .........., Error_code: 1146
该问题不仅增加了实施部门的工作压力,也给客户的使用带来诸多不便
目标:
1.可行方案一:看是否可以在现有的数据复制方案基础上,修故数据库配置项,可以过滤掉临时表,即不让临时表数据的变化触发数据复制操作;
2.可行方案二:若当前版本msyql无法实现,看高版本的mysql数据对数据复制的支持是否完善;
3.可行方案三:检查现有使用临时表的存储过程和函数,可否有替代实现方案;
4.可行方案四:如果有必要,可把临时表物理化。

Fatal error: Failed to run 'after_read_event' hook

猜你喜欢

转载自fs20041242.iteye.com/blog/1311010