mysql 跨庫JOIN


現有兩台MYSQL數據庫

 

一台是192.168.1.1 端口3306 上有數據庫DB1 有表TABLE1
一台是192.168.1.2 端口3307 上有數據庫DB2 有表TABLE2
192.168.1.1遠程連接192.168.1.2數據庫所使用的用戶名root1 密碼root1 
192.168.1.2遠程連接192.168.1.1數據庫所使用的用戶名root2 密碼root2
現在想對 TABLE1 和 TABLE2 兩張表進行關聯查詢 請問SQL應該怎么實現

 

沒有辦法直接進行JOIN查詢。

你可以在DB1中建立一個 FEDERATED 指向這個 DB2.table2 如下,然后就象在同一數據庫中DB1中操作即可。

CREATE TABLE TABLE2 (
    id     INT(20) NOT NULL AUTO_INCREMENT,
    name   VARCHAR(32) NOT NULL DEFAULT '',
    other  INT(20) NOT NULL DEFAULT '0',
    PRIMARY KEY  (id),
    INDEX name (name),
    INDEX other_key (other)
)
ENGINE=FEDERATED
DEFAULT CHARSET=latin1
CONNECTION='mysql://192.168.1.2:3307/DB2/TABLE2';

或者:

CONNECTION='mysql://root2:root2@192.168.1.2:3307/DB2/TABLE2';

來自:  http://bbs.csdn.net/topics/320196555


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM