mysql跨库查询解决方案

article/2025/8/18 14:14:59

1.第一种跨库查询,是在同一个mysql服务器下两个不同的数据库之间的联查,关系如下图
在这里插入图片描述
在同一个mysql服务器下,不同的两个数据直接加上库名就可以实现跨库查询了

select * from t_test1 t1, test2.t_test2 t2 where t1.id = t2.id

在这里插入图片描述
执行sql查询到一下结果
在这里插入图片描述
2.第二种跨库查询,是在两台不同服务器(物理服务器)上分别安装的mysql服务器,实现跨库查询,其实现原理类似一个虚拟映射,需要用到mysql的另一个存储引擎Federated,

   FEDERATED存储引擎访问在远程数据库的表中的数据,而不是本地的表。这个特性给某些开发应用带来了便利,你可以直接在本地构建一个federated表来连接远程数据表,配置好了之后本地表的数据可以直接跟远程数据表同步。实际上这个引擎里面是不真实存放数据的,所需要的数据都是连接到其他MySQL服务器上获取。

mysql默认没有开启federated存储引擎,需要在配置文件里面开启;

#在[mysqld] 下 添加 federated 然后重启mysql服务就可以了
[mysqld]
federated

如下图:

在这里插入图片描述

#输入命令查看引擎开启状态
show engines;

可以看到,已经开启了
在这里插入图片描述
然后就可在test1数据库上创建虚拟表了,将test2库上t_test2表映射到test1库上面

CREATE TABLE `t_test2` (`id` int NOT NULL,`name` varchar(255) DEFAULT NULL,PRIMARY KEY (`id`)
) ENGINE=FEDERATED DEFAULT CHARSET=utf8mb3 COMMENT='远程测试表t_test2' CONNECTION='mysql://root:123456@127.0.0.1:3306/test2/t_test2' ;
/**CONNECTION='mysql://root:123456$@127.0.0.1:3306/test2/t_test2' 这个配置是关键
root:代表远程数据库的用户
123456:代表远程数据的密码
127.0.0.1:代表远程数据库的ip地址,域名也可以
test2:代表远程数据库的数据库名称
t_test2:代表远程数据库中的哪一张表
**/

执行sql语句
在这里插入图片描述可以看到创建了一张t_test2的表,这张表其实不存在只是一个远程的映射而已
在这里插入图片描述可以看到使用FEDERATED引擎
在这里插入图片描述表创建完成后就可以写sql了

select * from t_test1 t1, t_test2 t2 where t1.id = t2.id

可以看到执行结果
在这里插入图片描述

federated使用注意事项:1.本地创建的表名必须在远程服务器存在,创建的字段也必须是远程表中的字段,可以比远程表的字段少,但是不能多,本地存储引擎选择
2.对本地虚拟表的结构修改,并不会修改远程表的结构 
3.truncate 命令,会清除远程表数据 
4.drop命令只会删除虚拟表,并不会删除远程表
5.select count(*), select * from limit M, N 等语句执行效率非常低,数据量较大时存在很严重的问题,但是按主键或索引列查询,则很快,如以下查询就非常慢(假设 id   为主索引)select id from db.tablea where id >100 limit 10 ;

http://chatgpt.dhexx.cn/article/GbXx1QEt.shtml

相关文章

MySQL跨库查询

一、跨库查询介绍 在MySQL中跨库查询主要分为两种情况,一种是同服务器的跨库查询;另一种是不同服务器的跨库查询;它们进行跨库查询是不同的,下面就具体介绍这两种跨库查询。 二、同服务器的跨库查询 同服务器的跨库查询只需要在关…

xampp v3.2.2 php版本,XAMPP(php集成环境包)

XAMPP(php集成环境包)是一款功能强大的PHP环境搭建工具,能够帮助用户在创建PHP环境的时候更加容易,简化了开发环境的配置流程,节约了PHP研发人员的时间。 【集成配置】 Apache 2.4.12 (VC11) (IPv6 Crypto apr-1.5.1 apr-util-1.5.4 apr-ico…

php一键安装包winnt,(推荐)Windows一键安装包安装

为了简化大家在windows下面的安装,我们在xampp基础上做了禅道企业版的windows一键安装包。 xampp是业内非常著名的AMP集成运行环境。禅道企业版的一键安装包主要在它基础上做了大量的精简,并集成了我们自主开发的控制面板,使用起来会更加方便…

windows下常见php集成环境安装包介绍

来源:http://aiyooyoo.com/index.php/archives/90 WAMP是指在Windows服务器上使用Apache、MySQL和PHP的集成安装环境,可以快速安装配置Web服务器,一 般说来,大家都习惯于将Apache、MySQL、PHP架设在Linux系统下,但是&a…

xammp php环境搭,XAMPP配置PHP环境搭建建站集成安装包7.2.4.4官方32位/64位版

XAMPP配置PHP环境搭建建站集成安装包官方最新版下载,XAMPP安装PHP环境搭建是小编为大家带来的一款功能强大的PHP建站集成软件包,Xampps工具能够让用户快速创建php环境,一键之下完成apache,php,mysql,phpmya…

php和nginx环境的配置,Nginx和PHP服务器环境的简单安装配置步骤

测试环境 Linux 2.6.18 nginx-1.0.4 http://www.nginx.org/ php-5.3.6 http://www.php.net/ 一,安装Nginx wget http://nginx.org/download/nginx-1.0.4.tar.gz tar -zxvf nginx-1.0.4.tar.gz cd nginx-1.0.4 ./configure --prefix/data/apps/nginx-1.0.4 make &…

安利phpEnv,用于本地开发测试的网站搭建环境集成神器

好在哪里? 不需要单独安装apache 不需要单独安装mysql 不需要php(也不需要配置) 不需要安装phpmyadmin 环境集成,小白利器,类似服务器面板(宝塔面板这种的集成环境) 安装主程序phpEnv&…

apache php集成环境搭建_Apache2.4+ PHP5.6 搭建PHP开发环境笔记

闲着无聊就把系统给换成了Win8.1,之前的一些各种开发环境就不得不重新安装了,以前开发PHP的时候用的是PHP5.3+Apache2.2.X的配置,今天就尝鲜一下换成Apache2.4+PHP5.6的环境玩玩,这里就简单的记录一下安装的配置过程吧. 安装前你需要准备下面的一些东西 ①下载Apache2.4的相…

服务器网站集成环境哪个好,如何搭建Web服务器之集成环境

WEB服务器简介 WEB服务器,即网站服务器,也称为WWW(WORLD WIDE WEB)服务器,是指驻留于因特网上某种类型计算机的程序。主要功能是提供网上信息浏览服务。目前最主流的三个Web服务器是Apache Nginx IIS。 WEB服务器搭建 web服务器的搭建有很多种方式,这里介绍三种常用的搭建方…

windows下常见php集成环境安装包介绍(updated)

windows下常见php集成环境安装包介绍(updated) September 4, 2010 | 作者:猪肉有毒 WAMP是指在Windows服务器上使用Apache、MySQL和PHP的集成安装环境,可以快速安装配置Web服务器,一 般说来,大家都习惯于将Apache、MySQL、PHP架设…

iis php环境安装包下载,Windows 一键安装包配置环境:Windows+IIS+Php+Mysql

集成包: IIS7组件、FTP7、php 5.5.7、mysql 5.6.15、phpMyAdmin 4.1.8、phpwind 9.0、ISAPI_Rewrite 安装包: 32位和64位 安装包启动 点击“下一步”后,指定安装目录,默认使用C:\websoft,然后点击“安装”。 开始将所需…

接上传到php环境里运行即可,6个常用PHP运行环境一键安装包

本文介绍了6个常用的php运行环境集成包的安装方法。更多集成包的安装方法请参见本站的另一篇文章:7个快速搭建Web服务器软件推荐 PHP的程序很火,像博客:Wordpress、论坛:Discuz!、SNS:UCenter Home、CMS:DedeCMS等等都…

新手php环境一键安装包,PHP运行环境一键安装包(phpStudy2013)

phpStudy2013 本程序包集成了最新版的ApachePHPMySQLphpMyAdmin,一次性安装后无须配置即可使用,是非常方便与好用的PHP调试环境。该程序不仅包括PHP调试环境,还包括了PHP开发手册等。总之学习PHP只需一个包。 对学习PHP的新手来说&#xff0c…

php集成环境 linux,linux下搭建php的集成环境

一个偶然的机会,在项目中需要搭建PHP的环境,由于PHP开发需要的东西比较多,像apache、mysql、PHP环境等,如果一个一个装很可能会有安装不全的问题,为此选择了安装集成环境,这里选择的是xampp-linux-x64-5.5.…

苹果php集成环境安装包,MacOS平台免费的PHP集成开发环境

程序控制: MxSrvs默认界面,提供对程序组件的各种操作,如:启动 / 停止、重启等。 服务列表:展示了服务类型程序的程序名以及当前版本号,带有下三角标识的点击可进行版本热切换。表头处链接“更多版本”可链接…

mac php环境一键安装包,XAMPP for Mac 8.0.0 PHP集成环境一键安装包

XAMPP是一个易于安装的Apache发行版,其中包含MariaDB、PHP和Perl。仅仅需要下载并启动安装程序。就这么简单。 访问phpmyadmin发现无法用IP访问: New XAMPP security concept 或者 New XAMPP security concept: Access to the requested directory is on…

apache+python+php+mysql集成环境安装包

一款使用JS框架制作开源的环境集成,代码在test.js文件里 apachepythonphpmysql(mariadb)phpmyadmin集成包 这里要用到xxjs 是基于原生js封装的一个框架 体积只有1M很小 例子下载 点击下载》》 有报毒请放行,被杀了就不能用了,下载后直接运行就…

织梦php集成环境安装包,常用PHP运行环境一键安装包

我们知道很多站长在做网站的时候用的最多的就是开源的php,那么对于php的调试自然就需要有php程序运行的环境才行,这样我们才能测试php,那么我们如果买一个虚拟主机的话,那么对于很多新手练习php程序来讲很不划算,那么遇…

docker 总结

docker 容器 1.什么是容器 容器就是在隔离的环境中运行的一个进程,如果进程停止,容器就会退出。隔离的环境拥有自己的系统文件,ip地址,主机名等 kvm虚拟机,linux,系统文件 程序:代码&#xff0c…

NFT Insider #73:淡马锡将领投Animoca Brands新一轮1亿美元融资

引言:NFT Insider由WHALE社区、BeepCrypto联合出品,浓缩每周NFT新闻,为大家带来关于NFT最全面、最新鲜、最有价值的讯息。每期周报将从NFT市场数据,艺术新闻类,游戏新闻类,虚拟世界类,其他动态类…