mysql - 在 Multi-Tenancy 的情况下如何将数据库副本复制到自身

标签 mysql database copy multi-tenant discriminator

我有带 mysql 数据库的 Multi-Tenancy 系统。存在基于鉴别器的 Multi-Tenancy 。每个表都包含列 tenantId。我有 tenantId = -1 的默认租户。对于此默认租户数据库,包含所有新租户的初始数据。

如何为同一个数据库中的新 tenantId 复制 tenantId = -1 的所有数据?数据库中有很多表,手动编写这样的脚本非常困难。

主要问题:如果我要转储数据库,那么我不能将这个转储加载到同一个数据库,因为主键和外键应该是新的。

最佳答案

您需要在 mysqldump 中使用 -w(或 --where)选项。由于您所有的表都有 tenantId 这应该有效:

mysqldump myDB --where='tenandId=-1'

关于mysql - 在 Multi-Tenancy 的情况下如何将数据库副本复制到自身,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13026239/

相关文章:

MySQL : weekly and monthly average

file - linux权限move_uploaded_file

hadoop - 将jar文件从我的本地hadoop节点复制到远程hadoop节点

javascript - 在 Node.JS 中使用配置文件的最佳方法

mysql - 如何跟踪与 Jira 问题相关的数据库更新?

sql - 如何将包含重复表的关联子查询转换为非关联子查询?

sql - 业务逻辑放在哪里?

typescript 复制文件

PHP变量名和SQL表列名长度

database - 打开/解密 Webex Connect db3 文件