南京网站建设网站制作,网店网络推广方案,wordpress官网中文版下载,五力合一营销型网站建设系统MySQL实现跨库join查询
一.同服务器的不同库
只需要在表名前加上db_name
select*
fromuserdb.user u
join orderdb.order o onu.id o.user_id;二.不同服务器的不同库
查看配置 FEDERATED
SHOW engines;如果是NO,需要改为YES.默认是NO 在my.ini文件中增加一行#xff0c;…MySQL实现跨库join查询
一.同服务器的不同库
只需要在表名前加上db_name
select*
fromuserdb.user u
join orderdb.order o onu.id o.user_id;二.不同服务器的不同库
查看配置 FEDERATED
SHOW engines;如果是NO,需要改为YES.默认是NO 在my.ini文件中增加一行重启MySQL 服务即可
federated在本地库创建相同的表建立连接
CREATE TABLE order (id bigint NOT NULL AUTO_INCREMENT,user_id bigint NOT NULL,product_name varchar(50) CHARACTER SET utf8 COLLATE utf8_general_ci DEFAULT NULL,PRIMARY KEY (id)
) ENGINE FEDERATED CONNECTIONmysql://root:123456192.168.10.100:3306/orderdb/order;注意本地创建的表名必须在远程服务器存在创建的字段也必须是远程表中的字段可以比远程表的字段少但是不能多本地存储引擎选择ENGINE FEDERATED
CONNECTION选项中的连接字符串的一般形式如下scheme://user_name[:password]host_name[:port_num]/db_name/tbl_name
配置密码作为纯文本的话会存在安全问题运行show create tableshow table status是可以见的
note:
本地表结构必须与远程完全一样远程数据库只能连接MySql;不支持事务不支持表结构的修改本地表更新远程表也同步更新反之亦然删除本地表远程表不会删除