被问到使用mysql的FEDERATED进行远程同步,多个服务器数据库的情况下同步不了? 之前对FEDERATED不了解,所以测试了一下,发现是可以的啊,主要是中间那个数据库要多加个中间表。反正都测试了就写出来记录一下:
目标:有数据库a、b、c,另b的fed_user表插入一条数据后,a的user,c的c_user 都同时插入数据;深入地,fed_user的更新、删除操作也需要进行同步。
没有多台机器的远程资源,测试为模拟,所以在本机操作,测试步骤:
1、数据库a创建表user
CREATE TABLE `user` (
`uid` BIGINT(20) NOT NULL AUTO_INCREMENT,
`user_name` char(17) DEFAULT NULL COMMENT '用户名',
`user_pwd` char(32) DEFAULT NULL COMMENT '密码',
PRIMARY KEY (`uid`)
)
2、数据库b创建fed_user表并FEDERATED连接a的user表
//密码有@不能使用该方法
CREATE TABLE `fed_user` (
`uid` BIGINT(20) NOT NULL AUTO_INCREMENT,
`user_name` char(17) DEFAULT NULL COMMENT '用户名',
`user_pwd&#