我的编程空间,编程开发者的网络收藏夹
学习永远不晚

如何实现mysql远程跨库联合查询

短信预约 -IT技能 免费直播动态提醒
省份

北京

  • 北京
  • 上海
  • 天津
  • 重庆
  • 河北
  • 山东
  • 辽宁
  • 黑龙江
  • 吉林
  • 甘肃
  • 青海
  • 河南
  • 江苏
  • 湖北
  • 湖南
  • 江西
  • 浙江
  • 广东
  • 云南
  • 福建
  • 海南
  • 山西
  • 四川
  • 陕西
  • 贵州
  • 安徽
  • 广西
  • 内蒙
  • 西藏
  • 新疆
  • 宁夏
  • 兵团
手机号立即预约

请填写图片验证码后获取短信验证码

看不清楚,换张图片

免费获取短信验证码

如何实现mysql远程跨库联合查询

这篇文章主要为大家展示了“如何实现mysql远程跨库联合查询”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何实现mysql远程跨库联合查询”这篇文章吧。

情况一2个库在同一台物理主机

如何实现mysql远程跨库联合查询

联合查询(不同的2个库,myemployees库和shoppingCart库),这2个库在同一台物理主机上,都在我本机。

如何实现mysql远程跨库联合查询

#联合查询(不同的2个库,myemployees库和shoppingCart库)SELECT emp01.`employee_id`, emp01.`first_name` FROM myemployees.employees AS emp01 LIMIT 0, 5UNIONSELECT emp02.`employee_id`, emp02.`first_name` FROM shoppingCart.`employees2` AS emp02;#SELECT emp01.`employee_id`, emp01.`first_name` FROM myemployees.employees AS emp01 LIMIT 0, 5UNION ALLSELECT emp02.`employee_id`, emp02.`first_name` FROM shoppingCart.`employees2` AS emp02;

情况二2个库不在同一台物理主机(即2个库分别在不同的物理主机)

为了演示效果,我这里使用我的虚拟机,我虚拟机里安装了Linux系统(centos),Linux系统中已经安装了MySql数据库,MySql数据库服务已经启动了,所有的环境已经全部弄好了。

我的Linux系统(centos)的ip是192.168.117.66。

如何实现mysql远程跨库联合查询

如何实现mysql远程跨库联合查询

如何实现mysql远程跨库联合查询

如何实现mysql远程跨库联合查询

如何实现mysql远程跨库联合查询

我打算我本地的author表和远程的user表进行联合查询。

在linux中输入SHOW CREATE TABLE `user`;这句话得到的结果后,我们把

CREATE TABLE IF NOT EXISTS `user` (  `id` INT(11) DEFAULT NULL,  `name` VARCHAR(20) DEFAULT NULL)

这段代码拷贝到我本地的数据库中,并且在末尾加上

ENGINE =FEDERATED CONNECTION='mysql://root:root@192.168.117.66:3306/testDB/user';这句话。

如何实现mysql远程跨库联合查询

CREATE TABLE IF NOT EXISTS `user` (  `id` INT(11) DEFAULT NULL,  `name` VARCHAR(20) DEFAULT NULL)ENGINE =FEDERATED CONNECTION='mysql://root:root@192.168.117.66:3306/testDB/user';

其实上面的那段语句,说白了,就是在我本地的数据库中建了一个远程数据库的连接的快捷方式(远程数据库的连接快捷方式),类似于什么呢?就类似于我们window操作系统中的桌面上的桌面快捷方式,我们双击一下桌面上的某个软件图标就能打开该软件,一样的道理嘛。

执行上面的语句即可。

对了,还有一点要注意:

你要查一下,你本地的mysql数据库的FEDERATED引擎有没有开启。

SHOW ENGINES;

如果FEDERATED是NO的话,说明没有开启,需要你去修改一下mysql数据库的配置文件。

如何实现mysql远程跨库联合查询

修改本地mysql数据库的配置文件,在配置文件末尾加上federated,如下图:

如果你是windows系统的话,就修改my.ini文件,如果你用的是Linux系统的话,就修改my.cnf文件。

如何实现mysql远程跨库联合查询

修改完配置文件后记得重启一下mysql的服务。

linux重启mysql服务,service mysqld restart

windows重启mysql服务,在dos窗口中,输入net stop mysql服务名,然后再输入net start mysql服务名

OK,全部搞定后,执行如下sql语句,即可看到跨库查询的查询结果。

#SELECT id, aname FROM authorUNIONSELECT id, `name` FROM `user`;

如何实现mysql远程跨库联合查询

SELECT * FROM author INNER JOIN  `user`;

如何实现mysql远程跨库联合查询

以上这种跨服务器跨库的查询,需要注意如下几点: 

该跨库查询方式不支持事务,最好别使用事务。

不能修改表结构。

MySQL使用这种跨库查询方式,远程数据库目前仅支持MySQL,其他数据库不支持。

表结构必须和目标数据库表完全一致。

以上是“如何实现mysql远程跨库联合查询”这篇文章的所有内容,感谢各位的阅读!相信大家都有了一定的了解,希望分享的内容对大家有所帮助,如果还想学习更多知识,欢迎关注编程网行业资讯频道!

免责声明:

① 本站未注明“稿件来源”的信息均来自网络整理。其文字、图片和音视频稿件的所属权归原作者所有。本站收集整理出于非商业性的教育和科研之目的,并不意味着本站赞同其观点或证实其内容的真实性。仅作为临时的测试数据,供内部测试之用。本站并未授权任何人以任何方式主动获取本站任何信息。

② 本站未注明“稿件来源”的临时测试数据将在测试完成后最终做删除处理。有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341

如何实现mysql远程跨库联合查询

下载Word文档到电脑,方便收藏和打印~

下载Word文档

猜你喜欢

如何实现mysql远程跨库联合查询

这篇文章主要为大家展示了“如何实现mysql远程跨库联合查询”,内容简而易懂,条理清晰,希望能够帮助大家解决疑惑,下面让小编带领大家一起研究并学习一下“如何实现mysql远程跨库联合查询”这篇文章吧。情况一2个库在同一台物理主机联合查询(不
2023-06-29

mysql dblink跨库关联查询如何实现

本文小编为大家详细介绍“mysql dblink跨库关联查询如何实现”,内容详细,步骤清晰,细节处理妥当,希望这篇“mysql dblink跨库关联查询如何实现”文章能帮助大家解决疑惑,下面跟着小编的思路慢慢深入,一起来学习新知识吧。1、解
2023-07-05

MySQL联合查询如何实现

这篇文章主要介绍“MySQL联合查询如何实现”,在日常操作中,相信很多人在MySQL联合查询如何实现问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”MySQL联合查询如何实现”的疑惑有所帮助!接下来,请跟着小编
2023-07-04

mysql dblink跨库关联查询的实现

本文主要介绍了mysql dblink跨库关联查询的实现,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
2023-02-27

mysql跨库联表查询怎么实现

在MySQL中,跨库联表查询可以通过使用数据库名称作为前缀来实现。以下是一个示例:SELECT t1.column1, t2.column2FROM database1.table1 t1JOIN database2.table2 t
mysql跨库联表查询怎么实现
2024-04-09

mysql dblink跨库关联查询的实现

目录1、解决方案2、操作3、缺点1、解决方案mysql是不支持跨库连接的,如果我们实在要连接的话可以用dblink方式。解释:dblink就是我们在创建表的时候连接到我们的远程库,然后我们本地新建的表数据就是映射远程的表的数据。当我们创
2023-02-27

MySQL如何实现跨库join查询

目录mysql实现跨库join查询同服务器的不同库不同服务器的不同库数据库跨库join方案总结MySQL实现跨库joinjs查询同服务器的不同库只需要在表名前加上db_nameselect*fromupythonserdb.user
2023-03-09

MySQL数据库聚合查询和联合查询怎么实现

这篇文章主要介绍“MySQL数据库聚合查询和联合查询怎么实现”,在日常操作中,相信很多人在MySQL数据库聚合查询和联合查询怎么实现问题上存在疑惑,小编查阅了各式资料,整理出简单好用的操作方法,希望对大家解答”MySQL数据库聚合查询和联合
2023-06-21

oracle跨库关联查询怎么实现

在Oracle中,可以使用以下几种方法实现跨库关联查询:使用数据库链接(Database Link):首先在目标数据库中创建一个数据库链接,然后使用该链接在当前数据库中执行查询。例如,假设有两个数据库A和B,需要在数据库A中查询数据库B中的
oracle跨库关联查询怎么实现
2024-04-09

java如何实现跨库查询

在Java中,可以使用JDBC(Java Database Connectivity)来实现跨库查询。以下是一个简单的示例:```javaimport java.sql.*;public class CrossDatabaseQueryEx
2023-09-14

MySQL跨服务器关联查询的实现

1. 首先确认服务器的Federated引擎是否开启show engines;2. 如果Federated 未开启,则需要开启到mysql的my.cnf配置文件中修改在 [mysqld] 下方加入 federated然后重启msyql服
2023-01-05

MySQL怎么实现跨库join查询

这篇文章主要介绍了MySQL怎么实现跨库join查询的相关知识,内容详细易懂,操作简单快捷,具有一定借鉴价值,相信大家阅读完这篇MySQL怎么实现跨库join查询文章都会有所收获,下面我们一起来看看吧。MySQL实现跨库join查询同服务器
2023-07-05

MySQL中的聚合查询和联合查询怎么实现

这篇文章主要介绍“MySQL中的聚合查询和联合查询怎么实现”的相关知识,小编通过实际案例向大家展示操作过程,操作方法简单快捷,实用性强,希望这篇“MySQL中的聚合查询和联合查询怎么实现”文章能帮助大家解决问题。一、聚合查询(行与行之间的计
2023-07-05

编程热搜

目录