mysql 跨库数据映射

1.查看federated引擎是否开启

点击进入Navicat并点击键盘上F6,出现命令行界面 ,输入指令:show engines;

2.开启federated引擎

Windows系统 : 在my.ini中加入federated

3.建立映射表

在服务器A上有MySQL数据库test_a,在服务器B上有MySQL数据库test_b。现在需要将test_a库中的user表数据映射到数据库test_b中。此时需要在数据库test_b中建立表user,注意ENGINE和CONNECTION。

复制代码
CREATE TABLE user (
  id int(11) NOT NULL,
  name varchar(30) NOT NULL,
  age int(11) NOT NULL,
  PRIMARY KEY (id)
) ENGINE=FEDERATED 
CONNECTION='mysql://test:123456@192.168.1.5:3306/test_a/user'
DEFAULT CHARSET=utf8;
复制代码

上面链接中test是链接数据库用户名称;123456是密码;192.168.1.5是数据库服务器ip;3306是数据库服务器端口;test_a是数据库名称;user是数据库表名称。

这里有一些连接字符串的例子:

CONNECTION='mysql://username:password@hostname:port/database/tablename'
CONNECTION='mysql://username@hostname/database/tablename'
CONNECTION='mysql://username:password@hostname/database/tablename'

4.服务器A上MySQL数据库test_a设置可以远程访问,并给test用户分配相关表的读写权限。

5.此时,修改test_b中的user表后,就可以在test_a中的user表中看到相关改动;同理,修改test_a中的user表后,就可以在test_b中的user表中看到相关改动。

原文地址:https://www.cnblogs.com/hani2088/p/11511939.html