mysql数据库管理-FEDERATED存储引擎远程链接MYSQL+ORACLE

2023-11-15

一、FEDERATED存储引擎


01、从5.1.26开始,默认MySQL不启用federated存储引擎,所以需要在my.cnf中加入federated选项
02、或是在命令行用–federated选项启动mysqld。

1.1、说明:


mysql 提供了一个类似Oracle中的数据库链接(DBLINK)功能的存储引擎–FEDERATED
当我们创建一个以FEDERATED为存储引擎的表时,服务器在数据库目录只创建一个表定义文件。文件由表的名字开始,并有一个frm扩展名。无其它文件被创建,因为实际的数据在一个远程数据库上。这不同于为本地表工作的存储引擎的方式。
1.2、局限性
远程服务器必须是一个MySQL服务器。FEDERATED对其它数据库引擎的支持可能会在将来被添加,目前不支持其他数据库,跨服务器远程其他类型数据库可以采用创建远程连接服务器的方式
FEDERATED表指向的远程表在你通过FEDERATED表访问它之前必须存在。
一个FEDERATED表指向另一个FEDERATED表是可能的,但是你必须小心不要创建一个循环。
没有对事务的支持。
如果远程表已经改变,对FEDERATED引擎而言是没有办法知道的。
a、这个的原因是因为这个表必须象数据文件一样工作,除了数据库其它任何都不会被写入。
b、如果有任何对远程数据库的改变,本地表中数据的完整性可能会被破坏。
FEDERATED存储引擎支持SELECT, INSERT, UPDATE, DELETE和索引。
它不支持ALTER TABLE, DROP TABLE或任何其它的数据定义语言语句。当前的实现不使用预先准备好的语句。
执行使用SELECT, INSERT, UPDATE和DELETE,但不用HANDLER。
FEDERATED表不能对查询缓存不起作用。
目前的局限性是这些。
这些限制中的一些在FEDERATED处理机的将来版本可能被消除。

1.3、跨服务的方式


mysql的FEDERATED存储引擎
oracle的dblink
创建远程连接服务器
大数据的presto,接管数据源,然后聚合分析
fink cdc也是一种方案


二、开启FEDERATED存储引擎


1.1、查看存储引擎
存在的FEDERATED存储引擎就配置文件开启
不存在就安装查看

show engines;


Support 的值有以下几个:

YES 支持并开启
DEFAULT 支持并开启, 并且为默认引擎
NO 不支持
DISABLED 支持,但未开启
如图:


1.1.1、不存在存储引擎-安装
federated是支持动态安装的

install plugin federated soname 'ha_federated.so';

注明:如果不行话,就重新编码安装mysql吧

1.2、开启存储引擎
在mysql的配置文件中加入federated,然后重启mysql

注意:要放在mysqld的模块下,放在其他模块下无法识别变量

如图:

 

可以登入,表示变量识别成功
查看存储引擎

yes表示开启成功

 

1.3、拓展mysql存储引擎对比


三、跨服务连接示例
FEDERATED存储引擎开启成功了

远程链接 mysql---》mysql

1.1、 目标:
本地mysql去链接云服务器的mysql


1.2、创建关系
注意:如果远程表已经改变,对FEDERATED引擎而言是没有办法知道的

要了解FEDERATED存储引擎的局限性,看本文1.2的说明
如果有任何对远程数据库的改变,本地表中数据的完整性可能会被破坏

建议:表名要见名知意,知道他是远程连接的表,就像下面的示例:link_xx_xx表

创建

-- 创建出结构一样的表,表名可以不一样


CREATE TABLE `link_yun_sys_user` (
  `id` int(50) NOT NULL,
  `username` varchar(50) DEFAULT NULL,
  `password` varchar(50) DEFAULT NULL,
  `update_time` datetime DEFAULT NULL,
  PRIMARY KEY (`id`)
) ENGINE = FEDERATED CONNECTION='mysql://root:root@81.1x.2xx.10:3306/testLink/sys_user'
-- 指定引擎为 FEDERATED
-- 指定用户名、密码、ip、端口、数据库、表

        如图:

 


1.2.1、权限说明
如果数据库有做权限限制,比如用户权限,增删改查权限,要进行授权,才能进行操作

1.3、成功效果


1.4、增删改查
本地新增1条数据

INSERT INTO link_yun_sys_user(id,username,`password`,update_time) VALUES('2','lisi','8888',NOW());
1

云服务器查看

SELECT * FROM sys_user
 

MYSQL---->>>ORACLE

笔者实验多次 还是建议不要这么搞 坑很多

基本信息
mysql版本:8.0.25

查看mysql版本的方法:登录成功 mysql -h localhost -u root -p -P 3306

执行:select version();

oracle:本地mac docker下装的oracle 操作步骤

启用federated引擎
1.查看数据库引擎开启情况,默认federated为no

show engines;
2.只要在/etc/my.cnf 中添加如下配置

sudo vim /etc/my.cnf
#添加以下配置
[mysqld]
federated
3.重启mysql;

brew services restart mysql
4.然后查看federated变成了yes

远程oracle数据库建表
CREATE TABLE "TEST"."BANK" 
   (    "ID" NUMBER(*,0), 
    "BANK_NAME" VARCHAR2(100)
   ) SEGMENT CREATION IMMEDIATE 
  PCTFREE 10 PCTUSED 40 INITRANS 1 MAXTRANS 255 NOCOMPRESS LOGGING
  STORAGE(INITIAL 65536 NEXT 1048576 MINEXTENTS 1 MAXEXTENTS 2147483645
  PCTINCREASE 0 FREELISTS 1 FREELIST GROUPS 1 BUFFER_POOL DEFAULT FLASH_CACHE DEFAULT CELL_FLASH_CACHE DEFAULT)
  TABLESPACE "TEST_DATA" ;
本地mysql数据库连接
CREATE SERVER OracleTest
FOREIGN DATA WRAPPER mysql
OPTIONS (USER 'TEST', PASSWORD 'TEST',HOST 'localhost', PORT 1521, DATABASE 'XE');
 
 
CREATE TABLE remote_bank (  
  `ID` int,
  `BANK_NAME` varchar(100) DEFAULT NULL
) ENGINE=FEDERATED CONNECTION='OracleTest/BANK';
————————————————
版权声明:本文为CSDN博主「cynthia_haha」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/cynthia_haha/article/details/125409906

————————————————
版权声明:本文为CSDN博主「suqinyi」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/qq_44413835/article/details/124101184

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

mysql数据库管理-FEDERATED存储引擎远程链接MYSQL+ORACLE 的相关文章

随机推荐

  • hosts文件为空白或删除情况修复

    直接输入修改即可 ip baiTab 空格 域名 回车 即可 du如果不放心 复制以下内容zhi修复hosts文件 再修dao改hosts文件 Copyright 1993 1999 Microsoft Corp This is a sam
  • 嵌入式面试题及答案

    我们在找嵌入式方面的工作时 最让我们头疼的恐怕就是技术类的面试题了 因为我们摸不到企业的命题规律 也不知道该怎样去准备 今天华清远见的高级嵌入式讲师将各大企业的面试题进行汇总 分享给大家 希望可以帮到各位小伙伴 下方附有答案哦 一 选择题
  • 深度学习基础模型算法原理及编程实现--10.优化方法:从梯度下降到NAdam

    文章列表 1 深度学习基础模型算法原理及编程实现 01 感知机 2 深度学习基础模型算法原理及编程实现 02 线性单元 3 深度学习基础模型算法原理及编程实现 03 全链接 4 深度学习基础模型算法原理及编程实现 04 改进神经网络的方法
  • C/C++趣味编程经典100例详解

    更新记录 2019 08 27 28题 重写 C C 语言经典 实用 趣味程序设计编程百例精解 1 绘制余弦曲线 在屏幕上用 显示0 360度的余弦函数cos x 曲线 问题分析与算法设计 如果在程序中使用数组的话 这个问题十分简单 但若规
  • 阿辉闯Java(Java基本语法)

    hallo 大家好 接下来和阿辉一起了解一下Java的基本语法吧 1 Java程序的基本格式 Java程序代码必须放在一个类中 初学者可以简单地把一个类理解为一个Java程序 类使用class关键字定义 在class前面可以有类的修饰符 类
  • 二十、转置矩阵

    1 定义 假设 交换A的所有行和列后 形成的新矩阵 即为矩阵A的转置矩阵 对一个矩阵进行转置的转置 结果是原矩阵 2 下面为转置矩阵的性质 分析矩阵时 我们主要从加法 乘法 零空间 列空间 秩 行列式等角度进行分析 矩阵又分为原始矩阵 逆矩
  • Uncaught ReferenceError: xxx is not defined 解决办法

    VM11371 1 Uncaught ReferenceError inputSize is not defined at
  • JSP&EL表达式&MVC&三层结构综合案例

    文章目录 JSP 1 JSP 概述 2 JSP 快速入门 2 1 搭建环境 2 2 导入 JSP 依赖 2 3 创建 jsp 页面 2 4 编写代码 2 5 测试 3 JSP 原理 4 JSP 脚本 4 1 JSP 脚本分类 4 2 案例
  • YOLOv7原文翻译

    前言 这个本来是我的毕业论文文献翻译 但是老师给打回来了 原因是网上的重合率太高 所以我又重新找了一篇 大家 文献翻译千万不要找大热门 太痛苦了 但是翻都翻完了所以就扔上来 除了一些名词不知道怎么翻译之外也还好 按理这些名词应该不翻译直接用
  • CentOS7下解决ifconfig command not found的办法

    注 本办法仅限于可联网的机器 即在安装时设置了IP地址和DNS可正常上网 解决办法如下 1 输入ip addr 确认IP地址是否设置正常 设置好如下所示 如果没有获取到IP地址则设置一个即可 2 确认sbin目录是否存在 cd sbin 3
  • Makefile学习(二)

    Makefile 1 ifeq DEBUG true 2 CC gcc g 生成debug版本 才可以生成调试信息 对程序进行调试 3 else 4 CC gcc 5 endif 6 all hello 7 hello lcd o play
  • 使用 Docker Desktop 安装 Centos 系统

    一 前言 由于 Docker 是一个容器 它支持在一个服务器进行多服务部署 并且还能保持服务的独立性 那么 在Docker 上的运用时 我们也是可以 独立部署多个系统来做不同是其他 这样环境独立的情况下 也就不会造成一下不必要的问题 二 使
  • 后端开发通用

    1 前后端开发 项目基于前后端分离的架构进行开发 前后端分离架构总体上包括前端和服务端 通常是多人协作开发 对于后端java工程师 把精力放在设计模式 spring springmvc linux mysql事务隔离与锁机制 mongodb
  • WB_BF项目问题说明以及探究

    我就现在WB BF项目群里面提到的 根据测试脚本运行日志来看 bf运行了约31小时后又开始出现了api调用返回nginx的错误信息 之后 bf客户端也无法打开 问题做一下说明 今天早上我在机器上复现了这一问题 针对于api调用会返回ngin
  • 遗传算法整理

    1 基本概念 使用群体搜索技术 将种群代表一组问题解 通过对当前种群施加选择 交叉和变异等一系列遗传操作来产生新一代种群 并逐步使种群进化到包含近似最优解的状态 2 遗传算法流程 3 标准遗传算法 标准遗传算法又称为经典遗传算法 它的优化变
  • 百度搭台,千家打擂,文心杯创业大赛成投资人新宠?

    百模大战 打响 掀起大模型领域 创业热潮 今年5月31日 百度启动 文心杯 创业大赛 后简称 大赛 不到1个月报名时间 吸引近1000个项目激烈角逐 在知名投资人和AI专家的权威评审和层层筛选后 40个潜力项目闯入 决赛圈 进行最终较量 大
  • Python数据可视化的例子——热力图(heatmap)

    关系型数据的可视化 热力图体现了两个离散变量之间的组合关系 热力图 有时也称之为交叉填充表 该图形最典型的用法就是实现列联表的可视化 即通过图形的方式展现两个离散变量之间的组合关系 读者可以借助于seaborn模块中的heatmap函数 完
  • skopt下载

    在pycharm中直接下载skopt时失败 网上有如下解决办法 在python当前位置执行下载 1 先安装scikit optimize pip install scikit optimize 后直接在pycharm中安装skopt成功 若
  • fastJson注解@JSONField指定字段的顺序

    使 ordinal指定字段的顺序 public class BasePackage JSONField ordinal 1 private int id JSONField ordinal 2 private int direction J
  • mysql数据库管理-FEDERATED存储引擎远程链接MYSQL+ORACLE

    一 FEDERATED存储引擎 01 从5 1 26开始 默认MySQL不启用federated存储引擎 所以需要在my cnf中加入federated选项 02 或是在命令行用 federated选项启动mysqld 1 1 说明 mys