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

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

ID:8811089

大小:131.45 KB

页数:6页

时间:2018-04-08

mysql使用federated实现类似oracle的dblink的功能_第1页
mysql使用federated实现类似oracle的dblink的功能_第2页
mysql使用federated实现类似oracle的dblink的功能_第3页
mysql使用federated实现类似oracle的dblink的功能_第4页
mysql使用federated实现类似oracle的dblink的功能_第5页
资源描述:

《mysql使用federated实现类似oracle的dblink的功能》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、使用场景:原理不多做介绍,请自行百度之,oracle有dblink功能,当我们的业务系统需要调用其他的业务系统时候,需要从数据库层面进行系统间的数据调用。Oracle中我们的客户端通过dblink调用已经成功实现。姑且把我们的主业务数据库称作为A,被调用的其他业务数据库(也可以理解为其他公司的数据库)称作为B。我们需要在A库中建立对B的映射,需要通过federated引擎来实现(这个貌似没有事务处理的能力,未加验证(不支持)。)只有innodb引擎支持事务参考链接http://hi.baidu.com/edeed/item/1e3f741eeb4fbef487ad4eb9B库需要做什么?B

2、库需要做的很简单,只需要告知我们需要的表结构,用户名密码,连接串,数据库串,当然一般情况下B库是会建立一个view供A库使用,并建立新用户赋予相应的权限供A库使用,用户权限如果是只读的那么A库就只有只读的权限,总而言之,B库就是需要给我们可访问的权限。A库需要做什么,工作以及注意点主要都在A库上了。查看A库的引擎情况如图:Showengines;此图是win732位mysql5.0.9版本默认情况federated是未开启的也是support字段为NO。如何开启?找到mysql的安装位置找到根目录下的my.ini文件在[mysqld]下边添加rederated即可我的默认是skip-red

3、erated你们的是什么就不知道了哦然后重启mysql服务在查询showengines;Federated的support就会变为YES了,此时我们的mysql已经支持该引擎了。Linux怎么做?测试系统为centos6.x64位mysql版本为5.1.71首次查询showengines;的时候没有federated的。增加该引擎的支持有两种办法(我查到的)第一种是安装时候tar包的时候./configure--prefix=/usr/local/mysql--without-debug--without-bench--enable-thread-safe-client--enable-a

4、ssembler--enable-profiling--with-mysqld-ldflags=-all-static--with-client-ldflags=-all-static--with-charset=latin1--with-extra-charset=utf8,gbk--with-innodb--with-csv-storage-engine--with-federated-storage-engine--with-mysqld-user=mysql--without-embedded-server--with-server-suffix=-community--with-

5、unix-socket-path=/usr/local/mysql/sock/mysql.sock红色的代码表示编译的时候支持rederated引擎第二种是在mysql安装完成之后Mysql>installpluginfederatedsoname'ha_federated.so';执行该语句就会动态将federated引擎加入到mysql中。(网上有的说执行这个语句会报错,可能是版本太低的原因),我执行该语句未报任何错误,成功安装该引擎。支持该引擎之后,在linux下还需要做一步就是修改my.conf文件类似于windows下的my.ini文件。Vim/etc/my.cnf然后运行sho

6、wengines;下边开始实践:以我们的114库为B库建立test库建立abc表CREATE TABLE `abc` (  `id` int(11) NOT NULL AUTO_INCREMENT,  `name` varchar(11) DEFAULT NULL,  `sex` varchar(22) DEFAULT NULL,  `birthday` varchar(22) DEFAULT NULL,  PRIMARY KEY (`id`)) ENGINE=MyISAM AUTO_INCREMENT=15 DEFAULT CHARSET=utf8数据执行插入。数据用户和用户权限略。做测

7、试不限制了现在处理A库我本地的mysql数据库创建表CREATETABLE`abc`(`id`INT(11)NOTNULLAUTO_INCREMENT,`name`VARCHAR(11)DEFAULTNULL,sexVARCHAR(11),birthdayVARCHAR(11),PRIMARYKEY(`id`))ENGINE=FEDERATEDAUTO_INCREMENT=14DEFAULTCHARSET=utf8CON

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。