美文网首页
FEDERATED存储引擎专题

FEDERATED存储引擎专题

作者: 这货不是王马勺 | 来源:发表于2023-01-18 17:41 被阅读0次

    概述

    可将FEDERATED存储引擎的功能类比为oracle的DBLINK或SQLSERVER的linkedserver,默认情况下mysql不启用该存储引擎

    启用FEDERATED存储引擎

    检查是否开启FEDERATED:

    show engines;
    

    从结果中看FEDERATED的support是No,说明没有启用;
    如果压根找不到FEDERATED的话说明没有编译进去,需要重新安装,FEDERATED支持动态安装

    install plugin federated soname 'ha_federated.so';
    

    如果需要启用FEDERATED,需要在/etc/my.cnf中[mysqld]模块下添加federated,然后重启mysql就生效

    vim /etc/my.cnf
    
    [mysqld]
    federated
    

    创建用户

    在本地数据库上创建远程用户并将Link库的所有权限授权:

    create user remote_user@'%' identified by '123';
    grant all on Link.* to remote_user@'%';
    flush privileges;
    create user remote_user@'localhost' identified by '123';
    grant all on Link.* to remote_user@'localhost';
    flush privileges;
    select user,host from mysql.user;
    

    在远程数据库上创建本地用户并将Link库的所有权限授权:

    create user remote_user@'%' identified by '123';
    grant all on Link.* to remote_user@'%';
    flush privileges;
    create user remote_user@'localhost' identified by '123';
    grant all on Link.* to remote_user@'localhost';
    flush privileges;
    select user,host from mysql.user;
    

    创建连接

    远程表:

    create table sys_user (
    id int not null,
    username varchar(50) default NULL,
    PRIMARY KEY (id)
    )ENGINE = InnoDB DEFAULT CHARSET=utf8;
    

    本地表和远程表需要表结构一致,在本地数据库执行如下建表语句

    create table link_yun_sys_user (
    id int not null,
    username varchar(50) default NULL,
    PRIMARY KEY (id)
    )ENGINE = FEDERATED CONNECTION='mysql://remote_user:123@10.10.1.175:3306/Link/sys_user';
    

    CONNECTION格式
    mysql://user_name[:password]@host_name[:port_num]/db_name/tb1_name
    其内容解释如下:
    mysql:公认连接协议,此处只能写mysql
    user_name:连接使用的用户名,必须在远程服务器的数据库上创建
    password:用户的密码
    host_name:远程服务器主机名或ip地址
    port_num:远程服务器端口号,默认3306
    db_name:远程表所在库名
    tb1_name:远程表名,可以和本地表名不一致,但结构要相同,且仅支持InnoDB和MyISAM

    创建之后进行测试验证即可

    相关文章

      网友评论

          本文标题:FEDERATED存储引擎专题

          本文链接:https://www.haomeiwen.com/subject/hmcfhdtx.html