设为首页 收藏本站
查看: 798|回复: 0

[经验分享] 本地MySQL数据库要访问远程MySQL数据库的表中的数据的实现

[复制链接]

尚未签到

发表于 2018-10-9 09:32:49 | 显示全部楼层 |阅读模式
  转自: http://blog.csdn.net/jenminzhang/article/details/9872647
  1.实现基本思路:借助 MySQL的 federated 存储引擎实现
  federated 存储引擎简单介绍 :federated 是其中一个专门针对远程数据库的实现。一般情况下在本地数据库中建表会在数据库目录中生成相应的表定义文件,并同时生成相应的数据文件。 但通过federated 引擎创建的表只是在本地有表定义文件,数据文件则存在于远程数据库中
  2.查看当前数据库服务是否支持 federated引擎 ,使用命令“ show engines ”命令查看 ,如下图:

  "show engines "命令展示结果,简单介绍 :
  第一列 :名称为 Engine,表示 存储引擎名称
  第二列 :Support,表示当前数据库服务是否支持所对应的存储引擎 ,一般情况 Support有以下几个值:
YES支持并开启DEFAULT支持并开启, 并且为默认引擎NO不支持DISABLED支持,但未开启  有上图可以看出,当前数据库服务不支持federated引擎 ,需要手动配置使  当前数据库服务支持federated引擎
  3.配置federated数据库存储引擎 :
  (1)windows 系统配置 :
  windows下在my.ini中加入federated,重新启动数据库服务即可开启;
  (2)Linux系统配置:
  在my.cnf文件中的mysqld选项中配置 federated ,重新启动数据库服务即可开启;
  4.配置数据库远程访问数据:
  (1)实用show engines 命令检查数据库是否已经支持federated引擎
  (2) 远程数据库表结构
  [sql] view plain copy

  •   CREATE TABLE IF NOT EXISTS `isa_ywxx` (
  •   `ywid` int(11) NOT NULL auto_increment COMMENT '主键自动增长',
  •   `ywbh` varchar(10) NOT NULL COMMENT '业务编号',
  •   `ywmc` varchar(20) NOT NULL COMMENT '业务名称',
  •   `ywbz` varchar(30) default NULL COMMENT '备注信息',
  •   PRIMARY KEY  (`ywid`)
  •   ) ENGINE=InnoDB  DEFAULT CHARSET=utf8 COMMENT='业务信息表' AUTO_INCREMENT=4 ;

  •   --
  •   -- 转存表中的数据 `isa_ywxx`
  •   --

  •   INSERT INTO `isa_ywxx` (`ywid`, `ywbh`, `ywmc`, `ywbz`) VALUES
  •   (1, '01', '综合业务', '综合业务'),
  •   (2, '02', '对公业务', '对公业务'),
  •   (3, '03', 'VIP业务', 'VIP业务');
  (3) 给远程数据库服务添加一条数据库登录用户信息 ,信息如下 :
  [sql] view plain copy

  •   grant select on hrkip.isa_ywxx to jenminzhang@'192.85.1.113' identified by 'jenminzhang';
  (4) 本地数据库表结构如下 :
  [sql] view plain copy

  •   CREATE TABLE IF NOT EXISTS `isa_ywxx` (
  •   `ywid` int(11) NOT NULL auto_increment COMMENT '主键自动增长',
  •   `ywbh` varchar(10) NOT NULL COMMENT '业务编号',
  •   `ywmc` varchar(20) NOT NULL COMMENT '业务名称',
  •   `ywbz` varchar(30) default NULL COMMENT '备注信息',
  •   PRIMARY KEY  (`ywid`)
  •   ) ENGINE=FEDERATED CHARSET=utf8 CONNECTION='mysql://jenminzhang:jenminzhang@192.85.1.9:3306/hrkip/isa_ywxx';
  配置完成了,可以进行测试了 。
  5.配置过程中应注意问题 :
  (1)首先要保证数据库服务支持 fedetated存储引擎
  (2)本地访问远程数据库配置 :远程服务器中需要添加一个访问数据库表的数据库用户,本地数据库服务中 数据库表结构和远程访问目标数据库表基本一致,只是存储引擎必须为 federated,并需要给其配置connection属性
  (3)此例中只是配置本地访问远程数据库的单向配置,如果需要配置双向访问,需要将本地与远程配置兑换,再次配置异常(没有试验,根据之前的OracleDB_link 配置猜测)
  备注(参数简单介绍) :
  192.85.1.113 :本地数据库服务IP地址
  192.85.1.9 :远程数据库无法IP地址
  hrkip: 远程数据名称


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-619420-1-1.html 上篇帖子: 解决MySQL主从不同步 下篇帖子: Mysql安装详细过程,tar方式
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表