Mysql从另一个数据库创建到表的符号链接

Posted

技术标签:

【中文标题】Mysql从另一个数据库创建到表的符号链接【英文标题】:Mysql create symbolic link to a table from another database 【发布时间】:2017-11-03 14:59:52 【问题描述】:

如标题所述,是否有可能对另一个数据库中的表进行“虚拟副本”或“符号链接”?

让我们以两个数据库为例:DB_A 和 DB_B。假设在 DB_A 中有一个名为 TBL1 的表

我想在 DB_B 中创建一个链接到 DBA.TBL1 的“虚拟表”DB_B.TBL1。当一个表被更新时,它也是兄弟。一件重要的事情是数据不能被存储两次。

【问题讨论】:

这将如何运作? 我更新了问题。 当某人也更新了他的兄弟并且以同样的方式没有对数据进行两次排序时,您是什么意思?你只想要表的架构还是什么?如果你想从另一个数据库访问一个表,你只需使用 DB_A.TBL1 只需使用DB_A.TBL1 【参考方案1】:

您可以通过创建updatable view 来完成此操作。

mysql 支持视图,包括可更新视图。视图是存储的查询,在调用时会产生结果集。视图充当虚拟表。

-- https://dev.mysql.com/doc/refman/5.7/en/views.html

【讨论】:

OP说数据不能存储两次..视图是存储查询结果的虚拟表 @AnouarZBAIDA 数据不会存储两次。来自文档:“视图是存储的查询,在调用时会产生结果集”——dev.mysql.com/doc/refman/5.7/en/views.html @AnouarZBAIDA 当数据被存储两次时,这被称为“物化视图”,这不是我在这里建议的。 把我放在图片中,我正在学习..视图在数据库中创建一个虚拟表并用执行查询的结果填充表..所以基本上存储在表中的信息和虚拟表AKA视图..这是正确的还是我遗漏了什么? 你说得对,我做了一些研究。 Materialized views are disk based and are updated periodically based upon the query definition. Views are virtual only and run the query definition each time they are accessed.

以上是关于Mysql从另一个数据库创建到表的符号链接的主要内容,如果未能解决你的问题,请参考以下文章

在MAMP中为mysql创建符号链接

linux软链接(符号链接)

创建符号链接时权限被拒绝

为 libmysqlclient.18.dylib 库创建符号链接

未知的警告来源:“找不到虚拟表的链接器符号...”

如何创建符号链接或硬链接到另一个符号链接?