mysql怎么跨库查询_在MySQL中怎样进行跨库查询?
在MySQL中跨库查询主要分为两种情况,一种是同服务的跨库查询;另一种是不同服务的跨库查询;它们进行跨库查询是不同的,下面就具体介绍这两种跨库查询。
一、同服务的跨库查询
同服务的跨库查询只需要在关联查询的时候带上数据名,SQL的写法是这样的:SELECT * FROM 数据库1.table1 x JOIN 数据库2.table2 y ON x.field1=y.field2;例如:
二、不同服务的跨库查询
不同服务的跨库查询,直接通过数据名加表明是无法进行关联的,这里需要用到MySQL数据库中的federated引擎。具体过程如下:
需求:服务A上的数据库X的表A需要关联服务B上的数据库Y中的表B,查询需要的数据;
1、先查看MySQL数据库是否安装了FEDERATED引擎,通过命令show engines;如下图:
如上图所示,MySQL安装了FEDERATED引擎,但Support是No,表示没有启用,去my.cnf文件末加上1行FEDERATED,重启MySQL即可。若没有找到FEDERATED引擎,则需要去安装了。
2、在服务A上的数据库X中创建一个表B,语句如下:CREATE TABLE table_name(……)ENGINE=FEDERATED CONNECTION='mysql://[username]:[password]@[localtion]:[port]/[db-name]/[table-name]'
说明:通过FEDERATED引擎创建的表只是在本地有表定义文件,数据文件则存在于远程数据库中,通过这个引擎可以实现远程数据访问功能。换句话说,这种建表方式会在服务A上的数据库X中创建了一个表结构文件(即服务B上的数据库Y的B表的表结构文件),表的索引、数据等文件还在服务B上的数据库Y中,相当于一种快捷方式,方便关联。
3、在服务A上的数据库X中直接进行A表与B表关联,就可以查询出需要的数据了。
这种方式有以下几点是需要注意的:1)、该跨库查询方式不支持事务,最好别使用事务。2)、不能修改表结构。3)、MySQL使用这种跨库查询方式,远程数据库目前仅支持MySQL,其他数据库不支持。4)、表结构必须和目标数据库表完全一致。
【编辑推荐】
【责任编辑:未丽燕 TEL:(010)68476606】
点赞 0
mysql怎么跨库查询_在MySQL中怎样进行跨库查询?相关推荐
- mysql单台跨数据库查询_在MySQL中怎样进行跨库查询?
在MySQL中跨库查询主要分为两种情况,一种是同服务的跨库查询:另一种是不同服务的跨库查询:它们进行跨库查询是不同的,下面就具体介绍这两种跨库查询. 一.同服务的跨库查询 同服务的跨库查询只需要在关联 ...
- mysql where 条件取反_数据库MySQL之where条件查询
数据库MySQL之where条件查询 1. where条件查询的介绍 使用where条件查询可以对表中的数据进行筛选,条件成立的记录会出现在结果集中. where语句支持的运算符: 比较运算符 逻辑运 ...
- mysql中起飞到达城市查询_让mysql慢慢起飞 - 初识慢日志
mysql优化的话,我一般会这样入手,从一个接口响应时间来说,如果响应时间超过1s,肯定是要优化的,保证网络问题ok的情况下,可进行如下调试: 1.先定位响应时间长的代码段可逐行注释,直接返回,如果当 ...
- B+树 范围查询_为什么 MySQL 使用 B+ 树,而不是 B 树或者 Hash?
Java技术栈 www.javastack.cn 关注优质文章 为什么 MySQL 使用 B+ 树是面试中经常会出现的问题,很多人对于这个问题可能都有一些自己的理解,但是多数的回答都不够完整和准确.大 ...
- mysql怎么子查询_在mysql中如何进行子查询?
在mysql中,子查询是指将一个查询语句嵌套在另一个查询语句中,可以在SELECT.UPDATE和 DELETE语句中配合WHERE子句进行实现,WHERE子句中语法格式为"WHERE (另 ...
- mysql inner join 长数字_关于mysql inner join 链接查询的优化
在使用查询语句时,inner join,left join,right join等这些联接语句,想必你们并不陌生,并且常常会用到,联接达到了咱们想要的结果,但是当数据越大越大的时候,会发现查询很慢,每 ...
- mysql user表添加记录_《MySQL数据操作与查询》- 返校复习课练习题,创建数据库user_system,创建数据表user及user_ext...
一.其它(共18题,100分) 1.创建数据库user_system CREATE DATABASE user_system 2.在数据库user_system中创建数据表user及user_ext, ...
- 微信小程序mysql查询_微信小程序云开发数据库操作查询记录
官方文档解读: 查询记录 1. 打开 pages/databaseGuide/databaseGuide.js 文件,定位到 onQuery 方法 2. 把注释掉的代码解除注释,onQuery 方法会 ...
- mysql是如何管理数据_【MySQL】如何管理数据库
MySQL作为一款数据库管理系统(DataBase Management System,DBMS)软件,可以管理多个数据库.本文,主要讲述如何对一个数据库进行一系列的"增.删.改.查&quo ...
- mysql主从复制原理详解_简述 MySQL 逻辑架构与主从复制原理。
↑ 点击上面 "时代Java"关注我们,关注新技术,学习新知识! 1.Mysql逻辑架构图 如果能在脑海中构建出MySql各组件之间如何协同工作的架构图,就会有助于深入理解MySq ...
最新文章
- R语言with函数和within函数:with函数基于表达式在dataframe上计算、within函数基于表达式在dataframe上计算并修改原始数据
- ubuntu安装新字体
- openlayers 可以实现3d地图效果吗_OpenLayers教程:图形绘制之设置图形的样式
- 最新最全的java多线程基础总结(上)
- centos下wget时提示unable to resolve host address ...
- Android版:验证手机号码的正则表达式 (转)
- 二. 简单的NSIS安装包
- [Unity] 战斗系统学习 8:构建 TPS 框架 3:mono 组件
- php2个数字拼接,PHP合并2个数字键数组值示例详解
- 【挖坑系列】关于浏览器の缓存机制
- WebShell --中国蚁剑,黑客之剑
- 新冠能否开启物联网发展的大门
- 做好ToB运营:避开4个误区和掌握3个获客方式
- Excel表格常用快捷键大全
- SecureCRT SecureFx 绿色破解版
- Premiere Pro 中的键盘快捷键
- 数据科学分布——Beta分布
- 联想家悦微型计算机的包装箱,08年联想家悦所有型号,联想家悦小机箱型号-
- 抓取微信小程序页面丶小程序源码
- 如何使用Hyper-V Manager和Powershell合并Hyper-V检查点