【发布时间】:2011-07-19 06:19:15
【问题描述】:
是否可以为 SQL Server 的链接服务器等功能创建/配置 MySQL?
如果是,请告诉我怎么做?我正在使用 MySQL 5.5。
【问题讨论】:
标签: mysql linked-server
是否可以为 SQL Server 的链接服务器等功能创建/配置 MySQL?
如果是,请告诉我怎么做?我正在使用 MySQL 5.5。
【问题讨论】:
标签: mysql linked-server
MySQL 的FEDERATED engine 提供类似于 SQL Server 的链接服务器(和 Oracle 的 dblink)功能的功能,但不支持连接到 MySQL 以外的供应商。从问题中不清楚您是否需要连接到 MySQL 以外的供应商的功能。
您可能想查看MySQL Proxy。这与 Linked Servers/dblink 的架构不匹配,但您可能可以解决一组类似的问题,您将使用 Linked Servers/dblink 来解决。
【讨论】:
MySQL 数据控制器是联邦引擎的后续产品,它允许连接到不同的数据库类型,例如 Microsoft SQL Server 或 Oracle。我还不确定开发进展如何。
【讨论】:
我是 MySQL 数据控制器的开发人员。不幸的是,由于我们没有请求,我们已经停止了它的开发。该插件在 MySQL 连接到 Oracle、MSSQL 或 MySQL 时 100% 正常运行。
根据一些要求,我们添加了一个关于它的博客和视频:
http://www.acentera.com/mysql-datacontroller/
问候, 弗朗西斯 L.
【讨论】:
很遗憾,您无法像使用 MS SQL 那样将整个 MySQL 数据库链接到另一个 MySQL 数据库。但是,您可以链接各个表。联合表是您创建的指向另一台服务器上的表的本地表。
您可以像运行任何其他表一样运行查询和存储过程。这两个表必须具有相同的结构,但 Federated 表使用不同的数据库引擎:Federated。如果您对远程表的结构进行任何更改,您应该重新创建本地联合表。
这个过程其实很简单,举个例子:https://docs.oracle.com/cd/E17952_01/mysql-5.0-en/federated-use.html
根据我的经验,即使与链接服务器相比,创建和实施此过程所需的时间也很少。让您的第一个联合表正常工作应该需要不到 30 分钟,然后是 5 分钟的过程。最后一项,在给你的联邦表命名时,我给它取了和远程表一样的名字,前面加了一个“federated_”,比如 federated_customer。
此外,将您的联合表定义存储为单独的存储过程,以便您可以在需要再次创建联合表时重复使用它们,并且其他开发人员可以看到您是如何生成联合表的。
【讨论】: