我有两个不同的服务器 server1
和 server2
,现在我在 server1
和 中有
。
我正在尝试像这样在 MySQL 中加入这两个表。db1
server2
中的 db2
Select a.field1,b.field2
FROM [server1, 3306].[db1].table1 a
Inner Join [server2, 3312].[db2].table2 b
ON a.field1=b.field2
但我遇到了错误。在 MYSQL 中是可能的。
最佳答案
是的,在 MySQL 中是可以的。
有人问过类似的问题previously也。您必须使用 FEDERATED ENGINE去做这个。思路是这样的:
您必须有一个基于另一个远程位置的表的联合表才能以您想要的方式使用。表的结构必须完全相同。
CREATE TABLE federated_table (
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://fed_user@remote_host:9306/federated/test_table';
关于mysql - 连接来自两个不同服务器的表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11114197/