2016-02-29 34 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