本周工作需要使用FEDERATED引擎学习并記录在此,首先附上转载文章一篇: 存储引擎描述FEDERATED存储引擎能让你访问远程的My数据库而不使用replication或cluster技术(类似于Oracle的dblink),使用FEDERATED存储引擎的表,本地只存儲表的结构信息,数据都存放在远程数据库上,查询时通过建表时指定的连接符去获取远程库的数据返回到本地FEDERATED存储引擎默认不启用 2、远程垺务器必须是MySQL数据库 3、在访问FEDERATED表中定义的远程数据库的表前,远程数据库中必须存在这张表。 4、FEDERATED 表不支持通常意义的索引,服务器从远程库获取所有的行然后在本地进行过滤,不管是否加了where条件或limit限制 --查询可能造成性能下降和网络负载,因为查询返回的数据必须存放在内存中,所以容易造成使用系统的swap分区或挂起。 5、FEDERATED表不支持字段的前缀索引 8、本地FEDERATED表无法知道远程库中表结构的改变 9、任何drop语句都只是对本地库的操作,不对远程库有影响 |
Federated存储引擎可以使你在本地数据库Φ访问远程数据库中的数据针对federated存储引擎表的查询会被发送到远程数据库的表上执行,本地是不存储任何数据的
简要介绍后,是不是發现它和Oracle的database link(数据库链接)非常相似它所实现的功能和db link类似,要在MySQL下找寻db link替代品的federated存储引擎是不二的选择。
本地MySQL数据库要访问远程MySQL数据库的表中的数据, 必须通过FEDERATED存储引擎来实现. 有点类似Oracle中的
--测试是否可以访问:
--测试是否可以修改:
版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。