我有两个不同的服务器server1和server2,现在我已经db1在server1和db2中server2.我试图像这样在MySQL中加入这两个表.
Select a.field1,b.field2
FROM [server1, 3306].[db1].table1 a
Inner Join [server2, 3312].[db2].table2 b
ON a.field1=b.field2
Run Code Online (Sandbox Code Playgroud)
但我收到了错误.在MYSQL中是可能的.
Sta*_*arx 29
有问类似的问题以前也.您必须使用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';
Run Code Online (Sandbox Code Playgroud)