现在需要实现将两个远程数据库中的数据归并到第三个数据库中,需要实现远程数据不落地直接通过SQL归并到第三个数据库中,通过咨询,可以通过MySQL中的FEDERATED存储引擎实现这种需求。
MySQL中针对不同的功能需求提供了不同的存储引擎。所谓的存储引擎也就是MySQL下特定接口的具体实现。
FEDERATED是其中一个专门针对远程数据库的实现。一般情况下在本地数据库中建表会在数据库目录中生成相应的表定义文件,并同时生成相应的数据文件。
但通过FEDERATED引擎创建的表只是在本地有表定义文件,数据文件则存在于远程数据库中(这一点很重要)。
通过这个引擎可以实现类似Oracle 下DBLINK的远程数据访问功能。
使用show engines 命令查看数据库是否已支持FEDERATED引擎:
使用FEDERATED建表语句如下:
CREATE TABLE (......) ENGINE =FEDERATED CONNECTION='mysql://[name]:[pass]@[location]:[port]/[db-name]/[table-name]'
创建成功后就可直接在本地查询相应的远程表了。
需要注意的几点:
1.本地的表结构必须与远程的完全一样。
2.远程数据库目前仅限MySQL
3.不支持事务
4.不支持表结构修改
分享到:
相关推荐
本文将详细讲解如何在MySQL中进行跨库查询,包括同服务和不同服务下的跨库操作。 首先,我们来看一下**同服务的跨库查询**。在同一MySQL服务内,如果需要查询不同数据库中的数据,可以通过在SQL语句中明确指定...
Oracle数据库的跨库访问是通过DBLINK(Database Link)机制实现的,这允许用户在一个数据库中执行查询,同时访问另一个远程数据库的数据。DBLINK提供了一种透明的方式,使得分布式数据库系统中的数据能够被轻松地...
本文将详细介绍如何在MySQL中进行跨库关联查询,特别是利用FEDERATED引擎来实现这一目标。 首先,我们面临的问题是,当需要在机器A的数据库A中的表A和机器B的数据库B中的表B之间进行关联查询时,由于它们分别位于...
在本项目中,我们将讨论如何使用QT5.12.3连接到远程MySQL数据库,并实现对数据库表的创建、字段的增删改查等基本操作。 首先,要建立QT与MySQL的连接,你需要安装MySQL的驱动,即qsqlmysql模块。这通常在安装Qt时...
总的来说,远程连接阿里云主机上的MySQL数据库需要正确配置阿里云实例的公网访问,以及在Qt应用程序中使用合适的API进行网络通信和数据库操作。通过这样的方式,你可以实现跨地域的数据访问和管理,为你的项目提供...
本教程将详述如何使用Java的JDBC(Java Database Connectivity)API在Android应用中连接到远程MySQL数据库,从而实现跨平台的数据交换。 首先,了解基础知识:JDBC是Java语言访问数据库的标准接口,它提供了一套...
总的来说,"Labview操作远程mysql数据库代码"是一个有价值的教育资源,它展示了如何将LabVIEW的强大可视化编程能力与MySQL的数据库管理功能相结合,实现跨平台的数据交互。通过学习和分析这个例子,开发者可以快速...
本压缩包“Mysql操作的C++动态库及演示程序.rar”提供了一个使用C++语言与MySQL数据库进行交互的动态链接库(DLL)及其配套的演示程序。下面我们将详细探讨相关的知识点。 1. **C++与MySQL的连接**: 在C++中,与...
在IT领域,数据库管理和应用程序开发是两个至关重要的部分。...通过研究这些文件,开发者可以更好地理解如何在Qt 5.14环境下实现远程MySQL数据库的连接和操作。这将对学习数据库集成、Qt编程和跨平台应用开发大有裨益。
这个引擎使得用户可以在本地数据库中查询和操作远程MySQL服务器上的数据,无需将所有数据复制到本地,从而实现分布式数据处理。 在MySQL中,Federated引擎的工作原理是创建一个本地表,该表实际上是远程服务器上表...
在Model模型中,可以定义`$connection`、`$dbName`和`$tablePrefix`属性来实现跨库操作。例如: ```php class MyModel extends \Think\Model { protected $connection = 'mysql://用户名:密码@ip地址:端口/数据库...
【基于QT的可实现远程备份图书管理系统】是一个利用QT框架开发的应用程序,旨在提供图书管理功能的同时,结合网络备份技术确保数据的安全性。QT是一个跨平台的C++图形用户界面库,广泛应用于桌面、移动以及嵌入式...
一旦数据源配置成功,就可以通过Teiid创建视图或其他查询操作来实现跨库连接。 非关系型数据库的集成也是Teiid所擅长的。以MongoDB和HBase为例,虽然它们的存储结构和访问方式与关系型数据库截然不同,但Teiid同样...
本项目专注于在Android环境中实现对远程MySQL数据库的增删改查(CRUD)操作,结合了MySQL数据库、PHP服务器端脚本以及Android客户端的集成应用。 首先,MySQL是一种广泛使用的开源关系型数据库管理系统,它具有高度...
在"phonegao连接mysql实现android例子"中,我们将探讨如何利用PhoneGap将Android应用与MySQL数据库进行交互,以及其中涉及到的关键技术点。 首先,PhoneGap与Android平台的集成是通过Cordova插件机制实现的。...
ODBC是一个在不同数据库系统间提供数据访问接口的规范,使得开发者无需关心底层数据库的具体实现,只需编写符合ODBC标准的代码,即可实现跨平台、跨数据库的数据访问。 在“mysql-connector-c-6.1.6-win32”这个...
"远程服务支持库"则是易语言提供的另一关键工具,它允许程序通过网络与其他系统进行通信,实现远程数据交互。在本项目中,这个库被用来实现SQL数据库的远程服务功能,这意味着用户可以通过网络对数据库进行操作,如...
由于它们是两个不同的数据库系统,直接的SQL查询并不能实现跨库操作。但是,可以通过中间层服务,如ODBC(Open Database Connectivity)或JDBC(Java Database Connectivity)建立连接,使MySQL能够“看到”Oracle中...
"ARM远程连接mysql所用库"这部分描述指出,压缩包中的资源是专门为在ARM设备上实现远程连接到MySQL服务器而准备的。这意味着开发人员可以编写Qt应用程序,通过网络连接到远端的MySQL服务器,执行查询,存取数据,而...