本文共 1121 字,大约阅读时间需要 3 分钟。
MySQL 的 FEDERATED 存储引擎 是实现本地数据库访问远程数据库数据的有效工具,类似于 Oracle 的数据库链接(DBLINK)。为了实现这一目标,首先需要在源数据库中执行 show engines 命令。
在执行上述命令后,系统会返回引擎支持状态。假设当前的 FEDERATED 支持值为 "NO",这意味着 FEDERATED 引擎尚未开启。引擎支持状态有以下几种可能:
如果当前状态为 "NO",需采取以下步骤进行配置:
在 Windows 环境下操作:
C:\Program Files\MySQL\MySQL Server 5.6\。my.ini 文件,如果不存在,则将 my-default.ini 文件复制至该目录,并重命名为 my.ini。my.ini 文件,在 [mysqld] 部分添加 federated 选项。show engines 命令,确认 FEDERATED 支持状态已更改为 "YES"。创建联邦表:
CREATE TABLE federated_table ( id INT(20) NOT NULL AUTO_INCREMENT, name VARCHAR(32) NOT NULL DEFAULT '', other INT(20) NOT NULL DEFAULT '0', PRIMARY KEY (id), KEY name (name), KEY other_key (other)) ENGINE=FEDERATED CONNECTION='mysql://username:password@remote_host:3306/db_name/table_name';
username:password@remote_host:3306/db_name.table_name。访问远程数据:
SELECT * FROM federated_table 查询联邦表数据,实时获取远程数据库中的数据。通过以上步骤,您可以实现本地 MySQL 数据库访问远程 MySQL 数据库的表数据,充分利用 FEDERATED 存储引擎的优势进行跨数据库操作。
转载地址:http://scqfk.baihongyu.com/