加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

Oracle数据库链接 – MySQL等效?

发布时间:2020-12-12 13:53:49 所属栏目:百科 来源:网络整理
导读:Oracle的 database link允许用户在多个物理数据库上进行查询。 有什么MySQL的等价物?解决办法 我想在两个物理数据库中的两个表上运行连接查询。是否可能在MySQL? 我可以想到四种可能的解决方案: 在查询外部表时使用完全限定表名。 MySQL支持dbname.tablen
Oracle的 database link允许用户在多个物理数据库上进行查询。

有什么MySQL的等价物?解决办法

我想在两个物理数据库中的两个表上运行连接查询。是否可能在MySQL?

我可以想到四种可能的解决方案:

>在查询外部表时使用完全限定表名。 MySQL支持dbname.tablename`语法来访问当前数据库范围之外的表。这要求当前连接的用户具有从另一个物理数据库中的请求表读取的适当权限。
>如果您的外部数据库在不同的MySQL服务器上运行(在同一台机器上或通过网络连接),您可以使用复制来不断更新远程表的只读副本。只有在运行两个单独的MySQL实例时,才能进行复制。
>使用FEDERATED MySQL storage engine将表虚拟导入到当前数据库中。当使用FEDERATED存储引擎时,这将提供将当前用户访问权限提供给第二个数据库的要求,因为CREATE TABLE-statement提供了凭据。这也适用于在不同物理服务器或不同MySQL实例上运行的数据库。我认为这将是最差的执行选项,并且确实有一些limitations – 或多或少重要,这取决于您的使用情况和您的要求。
>这是方法1的扩展。而不必在每次从外部表中请求信息时指定完全限定表名,您只需在现有数据库内创建一个基于简单的SELECT<<< ;列>> FROM< data>>。< table>&gt ;.这类似于FEDERATED方法,但是限于同一MySQL实例上的表。

就个人而言,我认为方法(4)是最有用的 – 但是其他方法也可能是根据您的要求而进行的解决方法。

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读