博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
本地MySQL数据库要访问远程MySQL数据库的表中的数据的实现
阅读量:7251 次
发布时间:2019-06-29

本文共 2050 字,大约阅读时间需要 6 分钟。

hot3.png

1.实现基本思路:借助 的 federated 存储引擎实现 

federated 存储引擎简单介绍 :federated 是其中一个专门针对远程的实现。一般情况下在本地数据库中建表会在数据库目录中生成相应的表定义文件,并同时生成相应的数据文件。 但通过federated 引擎创建的表只是在本地有表定义文件,数据文件则存在于远程数据库中

2.查看当前数据库服务是否支持 federated引擎 ,使用命令“ show engines ”命令查看 ,如下图:

SouthEast

"show engines "命令展示结果,简单介绍 :

第一列 :名称为 Engine,表示 存储引擎名称 

第二列 :Support,表示当前数据库服务是否支持所对应的存储引擎 ,一般情况 Support有以下几个值:

 

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

有上图可以看出,当前数据库服务不支持federated引擎 ,需要手动配置使  当前数据库服务支持federated引擎 

3.配置federated数据库存储引擎 :

 

(1)windows 系统配置 :

windows下在my.ini中加入federated,重新启动数据库服务即可开启;

(2)系统配置:

在my.cnf文件中的mysqld选项中配置 federated ,重新启动数据库服务即可开启;

4.配置数据库远程访问数据:

(1)实用show engines 命令检查数据库是否已经支持federated引擎 

(2) 远程数据库表结构 

 

  1. CREATE TABLE IF NOT EXISTS `isa_ywxx` (  
  2.   `ywid` int(11) NOT NULL auto_increment COMMENT '主键自动增长',  
  3.   `ywbh` varchar(10) NOT NULL COMMENT '业务编号',  
  4.   `ywmc` varchar(20) NOT NULL COMMENT '业务名称',  
  5.   `ywbz` varchar(30) default NULL COMMENT '备注信息',  
  6.   PRIMARY KEY  (`ywid`)  
  7. ) ENGINE=InnoDB  DEFAULT CHARSET=utf8 COMMENT='业务信息表' AUTO_INCREMENT=4 ;  
  8.   
  9. --  
  10. -- 转存表中的数据 `isa_ywxx`  
  11. --  
  12.   
  13. INSERT INTO `isa_ywxx` (`ywid`, `ywbh`, `ywmc`, `ywbz`) VALUES  
  14. (1, '01', '综合业务', '综合业务'),  
  15. (2, '02', '对公业务', '对公业务'),  
  16. (3, '03', 'VIP业务', 'VIP业务');  

(3) 给远程数据库服务添加一条数据库登录用户信息 ,信息如下 :

  1. grant select on hrkip.isa_ywxx to jenminzhang@'192.85.1.113' identified by 'jenminzhang';  

(4) 本地数据库表结构如下 :

  1. CREATE TABLE IF NOT EXISTS `isa_ywxx` (  
  2.   `ywid` int(11) NOT NULL auto_increment COMMENT '主键自动增长',  
  3.   `ywbh` varchar(10) NOT NULL COMMENT '业务编号',  
  4.   `ywmc` varchar(20) NOT NULL COMMENT '业务名称',  
  5.   `ywbz` varchar(30) default NULL COMMENT '备注信息',  
  6.   PRIMARY KEY  (`ywid`)  
  7. ) ENGINE=FEDERATED CHARSET=utf8 CONNECTION='mysql://jenminzhang:jenminzhang@192.85.1.9:3306/hrkip/isa_ywxx';  

配置完成了,可以进行测试了 。

 

5.配置过程中应注意问题 :

(1)首先要保证数据库服务支持 fedetated存储引擎

(2)本地访问远程数据库配置 :远程服务器中需要添加一个访问数据库表的数据库用户,本地数据库服务中 数据库表结构和远程访问目标数据库表基本一致,只是存储引擎必须为 federated,并需要给其配置connection属性 

(3)此例中只是配置本地访问远程数据库的单向配置,如果需要配置双向访问,需要将本地与远程配置兑换,再次配置异常(没有试验,根据之前的DB_link 配置猜测)

 

备注(参数简单介绍) :

192.85.1.113 :本地数据库服务IP地址

192.85.1.9 :远程数据库无法IP地址

hrkip: 远程数据名称

转载于:https://my.oschina.net/7795442/blog/828912

你可能感兴趣的文章
测试JdbcTemplate执行SQL语句和存储过程
查看>>
tableview 里面的 必须配套使用的方法
查看>>
ClassLoader工作机制
查看>>
子查询
查看>>
Android使用FFMpeg实现推送视频直播流到服务器
查看>>
(转)8 Tactics to Combat Imbalanced Classes in Your Machine Learning Dataset
查看>>
电信网络拓扑图自动布局之总线
查看>>
微信开放平台开发——网页微信扫码登录(OAuth2.0)
查看>>
DataList和Repeat无数据时提示暂无数据几种方法
查看>>
SharePoint is Flowers and Rainbows and Unicorns
查看>>
【转载】ASP.NET MVC:通过 FileResult 向 浏览器 发送文件
查看>>
系统视图和系统存储过程DDL语句
查看>>
C#温故而知新学习系列之XML编程—XmlSerializer类把复杂对象序列化为XML文档(六)...
查看>>
用C做的电子时钟程序
查看>>
符号引用(typeglob,别名)与全局变量的修改
查看>>
利用泛型实现通用的list和array转换
查看>>
打油诗 自嘲
查看>>
计划开始写redis的源码分析笔记
查看>>
java 空字条串空判断 效率
查看>>
js倒计时跳转页面
查看>>