2016-02-29 59 views
0

我在MySQL中有一张表,我需要在不同的服务器上连接几张表。问题在于这些其他表在Informix中。加入MySQL和Informix表

我可以通过选择MySQL表的内容并使用选定的数据在Informix中创建一个临时表来实现它,但是我认为在这种情况下它会代价太高。

是否有将MySQL表与Informix表连接的最佳方式?

回答

1

我最终所做的是手动(即从php应用程序)保持同步mysql表与informix中的等价物,所以我不需要更改旧代码。这是一个临时解决方案,因为使用informix的旧系统将被替换。

2

几年前,我在开发一个需要从Informix和MySQL数据库中绘制数据的Rails应用程序时遇到了类似的问题。我最终做的是使用可连接到两个数据库的ORM库,从而抽象出数据来自两个不同数据库的事实。不知道这是否会成为比您提出的临时表解决方案更好的技术。快速谷歌搜索也带来了this,这可能是有前途的。

1

这有时可以在数据库管理系统中用一种叫做federation的技术来解决。我们的想法是,您可以在两个系统中的一个中创建虚拟表,以便按需查询其他数据库系统。

对于MySQL和MariaDB都有FederatedX storage engine,不幸的是它只能与其他MySQL/MariaDB系统一起使用。这是一个较老的分支,但据我所知,没有维护,Federated storage engine

有些人可能会考虑迁移到MariaDB,您可以使用包含ODBC客户端的CONNECT storage engine