进入mysql命令行,没有看到Federated,说明没有安装
mysql>show engines;
安装Federated
mysql> install plugin federated soname 'ha_federated.so';
查看有了Federated,但是是NO,说明没有开启
Linux的解决方法
vi /etc/my.cnf,加入一行federated,保存并退出
参考一下在windows下的解决办法,找到MYSQL的安装目录C:\Program Files\MySQL\MySQL Server 5.6里的my.int文件,可能没有,就把my-default.ini文件复制一个改名为my.int,然后在my.int文件里的[mysqld]下面加一行federated,保存,重启mysql服务,再用命令show engines查询,
重启mysql服务
service mysqld restart
再次查看,已经是yes了
使用FEDERATED建表语句如下:
CREATE TABLE (......) ENGINE =FEDERATED CONNECTION='mysql://[name]:[pass]@[location]:[port]/[db-name]/[table-name]'
name--mysql用户名
pass--mysql密码
location--ip
port:端口号
db-name:数据库名
table-name:表名
PS:创建的表名和远程访问的表名可以不同。