mysql load data infile 上传数据 不显示_第22问:我有带外键的表,你有数据么?

e389b7869d25c11e3f8f94a671fcbbb0.png

问题

实验 8 中,我们为表生成了测试数据。

有小伙伴问:如果两个表有外键关系,我们生成的随机数据没法满足外键关系,怎么办?

实验

先来建一个测试库:

f4db8a49e3db5656f68a23fc27cbd46d.png

建两张有外键关系的表:

ad023ade67f172c19a538afa184f4bd2.png

先为 office 表灌入一些基础数据:

f88047504c956c6087b40d8d3acc56dc.png

然后为 user 表灌入支持外键的数据:

1c08ba8046871d9742a122a047fac1f0.png

来看一下我们生成的效果:

c00960fd124c5e3449a83098238885dd.png

可以看到生成工具为 office1 和 office2 两个外键列都生成了符合外键规范的数据:

034e8685e387d2adb1624e0592fbfa6f.png

而外键数据的采样数量正是 100。

? 小技巧

如果大家希望为不同的外键列,生成不同采样数量的数据,可以创建多张表,每张表分别配置一个外键列,最后将多张表合并为一张表。

在 mysql_random_data_load v0.1.12 中,存在缺陷,使得 --max-fk-samples 配置不生效,始终是 100。

目前在等待 percona 修复,如果大家着急用,可以在 https://github.com/ikarishinjieva/mysql_random_data_load/releases/download/fix_max-fk-samples/mysql_random_data_load.fix.tar.gz 下载作者临时修复的 linux 版本。


相关推荐:

第21问:我有个 SQL 文件要回放,又怕压死业务

第20问:删除了数据文件, 该往哪个方向逃跑

第19问:MGR 架构,如果一个节点网络不稳,消息缓存会被撑满么?
关于 MySQL 的技术内容,你们还有什么想知道的吗?赶紧留言告诉小编吧!

f05814f79c747b1993983b63e66a7ef2.png

本文关键字:#外键# #修复# #percona# 想看更多技术好文,点个 “在看” 吧!
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值