mysql使用federated引擎远程访问数据库

         在实际工作中,我们可能会遇到需要操作其他数据库的部分表,但又不想系统连接多库。此时我们就需要用到数据表映射。Mysql自带的FEDERATED引擎完美的帮我们解决了该问题。

         开启dederated引擎:

                1.windows环境:my.ini文件[mysqld]中加入一行:federated

                2.linux环境:my.cnf文件[mysqld]中加入一行:federated

        重启mysql服务,用show engines命令查看是否已经开启支持。

        语法:

           CREATE TABLE (......) ENGINE =FEDERATED CONNECTION='mysql://[name]:[pass]@[location]:[port]/[db-name]/[table-name]' 

             name--mysql用户名

             pass--mysql密码

             location--ip

             port:端口号

             db-name:数据库名

             table-name:表名

             PS:创建的表名和远程访问的表名可以不同。

     授权:

            grant 授权类型(select,update,insert,delete“,”分隔) on 库名 to 用户名@"%" identified by "密码";

      授权后,使用 flush privileges命令刷新一下。

      参考链接:https://www.2cto.com/database/201412/358397.html

                        https://blog.csdn.net/qq_33578833/article/details/80177115

发布了151 篇原创文章 · 获赞 107 · 访问量 133万+

猜你喜欢

转载自blog.csdn.net/sanbingyutuoniao123/article/details/82348109