(十二)MySQL跨源访问Federated

2022-02-11  本文已影响0人  走码人

Federated引擎的使用

场景

两个数据源DB1和DB2,需要在DB1中访问DB2的表或视图,类似Oracle的dblink

实现过程

1-检查DB1的Federated是否开启

show engines;
20220211084621.png

如果未开启,修改DB1mysql配置信息,增加配置,默认mysql是不开启federated引擎的

#开启federated
federated

2-创建表指向DB2

CREATE TABLE `bas_code_link` (
  `id` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL COMMENT '系统ID,唯一主键',
  `code` varchar(32) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL,
  `name` varchar(64) CHARACTER SET utf8mb4 COLLATE utf8mb4_0900_ai_ci NOT NULL
  PRIMARY KEY (`id`) USING BTREE
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4 COLLATE=utf8mb4_0900_ai_ci COMMENT='基础编码分类' 
ENGINE =FEDERATED CONNECTION='mysql://用户:密码@ip地址:端口/数据库/数据库表'

注意事项

这样就可以在DB1中直接访问DB2中的表了

上一篇下一篇

猜你喜欢

热点阅读