在本地MySQL中创建了一个FEDERATED类型的表.对其执行UPDATE后,SELECT看到的更新结果正确的.但回到这个表所指向的远程MySQL上SELECT这个"源表"却发现其中的数据并未更新,请问这是什么原因?MySQL 5.5 Reference Manual上说如果FEDERATED表对应的远程表的数据内容有了改变,是不会反应到这个FEDERATED表上.这里想问一下:如果在FEDERATED表上INSERT,UPDATE,DELETE后其结果也不会反应到对应的远程表上?

解决方案 »

  1.   

    首先谢谢ACMAIN_CHM给予的提示.我发现如果将远程MySQL上的对应表的storage engine改成非InnoDB的,在本地FEDERATED表上做的数据修改将能够在远程表上看到.也就是说远程表如果是InnoDB的,在本地FEDERATED表上UPDATE后的确要COMMIT一下才行.所以现在的问题是:怎样才能将这个COMMIT命令从本地MySQL发送到远程MySQL?因为远程表必须是InnoDB的,所以向各位请教这个新问题.谢谢!
      

  2.   

    看看参数autocommit是否设置成了off