mysql处理跨连接(dblink)
发布日期:2021-06-29 11:46:47 浏览次数:2 分类:技术文章

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

首先查看是否支持federated 引擎

如果不支持,在my.ini中增加一行

federated

重启mysql即可。

引擎说明 本地MySQL数据库要访问远程MySQL数据库的表中的数据, 必须通过FEDERATED存储引擎来实现. 有点类似Oracle中的 数据库链接(DBLINK). 要允许这个存储引擎, 当构建MySQL时使用--with-federated-storage-engine来configure.  当创建一个FEDERATED表的时候, 服务器在数据库目录创建一个表定义文件. 文件由表的名字开始, 并有一个.frm扩展名.

本地服务器上为访问远程表创建一个FEDERATED表

CREATE TABLE "sys_user" (  "id" varchar(200) NOT NULL,  "name" varchar(200) NOT NULL,  "phone" varchar(200) DEFAULT NULL,  "registTime" datetime DEFAULT NULL,  "email" varchar(200) DEFAULT NULL,  "lastLonginTime" datetime DEFAULT NULL,  "remark" varchar(1000) DEFAULT NULL,  "change_password" tinyint(4) DEFAULT NULL COMMENT '为1时需要修改密码,为0不需要',  "password_date" datetime DEFAULT NULL,  PRIMARY KEY ("id")) ENGINE=FEDERATED CONNECTION='mysql://username:password@remote_host:3306/db_name/table_name';

除了ENGINE选项应该是FEDERATED, 并且CONNECTION表选项是给FEDERATED指明如何连接到远程服务器上的连接字符串之外, 

这个表的结构必须完全与远程表的结构相同.  
远程主机信息指明本地服务器要连接到的远程服务器, 数据库和表信息指明哪一个远程表要被作为数据文件来用

转载地址:https://blog.csdn.net/zzchances/article/details/103487049 如侵犯您的版权,请留言回复原文章的地址,我们会给您删除此文章,给您带来不便请您谅解!

上一篇:mysql游标循环表与存储过程传参
下一篇:mysql查询某属性值出现次数大于1

发表评论

最新留言

不错!
[***.144.177.141]2024年04月15日 10时15分16秒