mysql使用federated_实现类似oracle的dblink的功能

2023-12-07 17:08

本文主要是介绍mysql使用federated_实现类似oracle的dblink的功能,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

1.查看 federated 功能是否开启

命令: show engines;

如下:我查询我的已经开启了。如果没有开启,在mysql的配置文件my.ini(windows下) mysqld标签下添加federated,然后重启mysql服务。


2.假如A库作为业务库,B库作为其他业务库,就是把B库的表映射到业务库A库中,供A库使用。

A库中建立对B库的映射。

B库给A库只读权限(即A库只能查询,不能读写)。

3.在A库建立对B库的映射,关键是Engine=federated,connection串得正确,A库中就会新建一个user表了。

</pre><pre name="code" class="sql">CREATE TABLE `user` (`member_id` int(11) NOT NULL AUTO_INCREMENT COMMENT '会员id',`phpssouid` int(11) NOT NULL DEFAULT '0',`member_name` varchar(50) NOT NULL COMMENT '会员名称',`member_truename` varchar(20) DEFAULT NULL COMMENT '真实姓名',`member_passwd` varchar(32) NOT NULL COMMENT '会员密码',`encrypt` varchar(6) NOT NULL DEFAULT '0',`member_time` varchar(10) NOT NULL COMMENT '会员注册时间',`member_login_time` varchar(10) NOT NULL COMMENT '时间',`member_login_ip` varchar(20) DEFAULT NULL COMMENT 'ip',`member_old_login_ip` varchar(20) DEFAULT NULL COMMENT 'ip',`available_predeposit` decimal(10,2) NOT NULL DEFAULT '0.00' COMMENT '金额',`modelid` int(11) NOT NULL DEFAULT '10',`islock` int(11) NOT NULL DEFAULT '0',`member_mobile` varchar(11) DEFAULT NULL COMMENT '手机号',`vip` int(11) NOT NULL DEFAULT '0',`member_email` varchar(100) NOT NULL COMMENT '会员邮箱',`point` smallint(6) NOT NULL DEFAULT '0',`siteid` smallint(6) NOT NULL DEFAULT '1',`connectid` varchar(40) DEFAULT NULL,`phpcms_from` varchar(40) DEFAULT NULL,`groupid` tinyint(3) NOT NULL DEFAULT '2',`wx_openid` varchar(64) NOT NULL DEFAULT '0',  PRIMARY KEY (`member_id`),UNIQUE KEY `phpssouid` (`phpssouid`),KEY `member_name` (`member_name`)
) ENGINE=FEDERATED AUTO_INCREMENT=2328 DEFAULT CHARSET=utf8 COMMENT='用户表'CONNECTION='mysql://root:667788@localhost:3306/jiushui/shopjl_member';


注意:   A库里新建的表的字段是B库里对应表的子集,不能有B库中不存在的字段。
4.让A库的改动不能影响B库,A库只能查询B库,需要设置授权。

show grants for root@'localhost';

grant select on `smarthome-v2`.wifi_user to root@'localhost';


参考网址:http://wenku.it168.com/d_001497512.shtml






这篇关于mysql使用federated_实现类似oracle的dblink的功能的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/466653

相关文章

使用Java解析JSON数据并提取特定字段的实现步骤(以提取mailNo为例)

《使用Java解析JSON数据并提取特定字段的实现步骤(以提取mailNo为例)》在现代软件开发中,处理JSON数据是一项非常常见的任务,无论是从API接口获取数据,还是将数据存储为JSON格式,解析... 目录1. 背景介绍1.1 jsON简介1.2 实际案例2. 准备工作2.1 环境搭建2.1.1 添加

MySQL中删除重复数据SQL的三种写法

《MySQL中删除重复数据SQL的三种写法》:本文主要介绍MySQL中删除重复数据SQL的三种写法,文中通过代码示例讲解的非常详细,对大家的学习或工作有一定的帮助,需要的朋友可以参考下... 目录方法一:使用 left join + 子查询删除重复数据(推荐)方法二:创建临时表(需分多步执行,逻辑清晰,但会

Oracle的to_date()函数详解

《Oracle的to_date()函数详解》Oracle的to_date()函数用于日期格式转换,需要注意Oracle中不区分大小写的MM和mm格式代码,应使用mi代替分钟,此外,Oracle还支持毫... 目录oracle的to_date()函数一.在使用Oracle的to_date函数来做日期转换二.日

Java实现任务管理器性能网络监控数据的方法详解

《Java实现任务管理器性能网络监控数据的方法详解》在现代操作系统中,任务管理器是一个非常重要的工具,用于监控和管理计算机的运行状态,包括CPU使用率、内存占用等,对于开发者和系统管理员来说,了解这些... 目录引言一、背景知识二、准备工作1. Maven依赖2. Gradle依赖三、代码实现四、代码详解五

java如何分布式锁实现和选型

《java如何分布式锁实现和选型》文章介绍了分布式锁的重要性以及在分布式系统中常见的问题和需求,它详细阐述了如何使用分布式锁来确保数据的一致性和系统的高可用性,文章还提供了基于数据库、Redis和Zo... 目录引言:分布式锁的重要性与分布式系统中的常见问题和需求分布式锁的重要性分布式系统中常见的问题和需求

SpringBoot基于MyBatis-Plus实现Lambda Query查询的示例代码

《SpringBoot基于MyBatis-Plus实现LambdaQuery查询的示例代码》MyBatis-Plus是MyBatis的增强工具,简化了数据库操作,并提高了开发效率,它提供了多种查询方... 目录引言基础环境配置依赖配置(Maven)application.yml 配置表结构设计demo_st

如何使用celery进行异步处理和定时任务(django)

《如何使用celery进行异步处理和定时任务(django)》文章介绍了Celery的基本概念、安装方法、如何使用Celery进行异步任务处理以及如何设置定时任务,通过Celery,可以在Web应用中... 目录一、celery的作用二、安装celery三、使用celery 异步执行任务四、使用celery

使用Python绘制蛇年春节祝福艺术图

《使用Python绘制蛇年春节祝福艺术图》:本文主要介绍如何使用Python的Matplotlib库绘制一幅富有创意的“蛇年有福”艺术图,这幅图结合了数字,蛇形,花朵等装饰,需要的可以参考下... 目录1. 绘图的基本概念2. 准备工作3. 实现代码解析3.1 设置绘图画布3.2 绘制数字“2025”3.3

oracle数据库索引失效的问题及解决

《oracle数据库索引失效的问题及解决》本文总结了在Oracle数据库中索引失效的一些常见场景,包括使用isnull、isnotnull、!=、、、函数处理、like前置%查询以及范围索引和等值索引... 目录oracle数据库索引失效问题场景环境索引失效情况及验证结论一结论二结论三结论四结论五总结ora

Jsoncpp的安装与使用方式

《Jsoncpp的安装与使用方式》JsonCpp是一个用于解析和生成JSON数据的C++库,它支持解析JSON文件或字符串到C++对象,以及将C++对象序列化回JSON格式,安装JsonCpp可以通过... 目录安装jsoncppJsoncpp的使用Value类构造函数检测保存的数据类型提取数据对json数