因最近工作上,测试服需要同步生产的一部分数据,如果使用全表导入显然已不合适。
最快的办法就是,两个服务之间通过federated 引擎跨服务查询
首先在测试服 需要链接到远程服的 mysql 检查 mysql 的federated 引擎是否打开
1、使用 show engines; 查看 federated 引擎是否打开
FEDERATED YES Federated MySQL storage engine NO NO NO
如上,FEDERATED 所在行后面为YES即为已打开,为NO未打开
2、打开 federated 引擎
vi /etc/my.cnf
在[mysqld]之后添加:
federated
3、打开federated 引擎后,就可以创建跨服务的查询了
DROP TABLE IF EXISTS `AA_LINK`;
CREATE TABLE `AA_LINK` (
`ID_` varchar(64) NOT NULL COMMENT 'ID',
`NAME` varchar(64) DEFAULT NULL COMMENT 'NAME'
) ENGINE=federated connection = 'mysql://user:password@host:port/batabase/table';