![e389b7869d25c11e3f8f94a671fcbbb0.png](https://i-blog.csdnimg.cn/blog_migrate/6b89b2f70acfb65d27a7ef4e57030aba.jpeg)
问题
在实验 8 中,我们为表生成了测试数据。
有小伙伴问:如果两个表有外键关系,我们生成的随机数据没法满足外键关系,怎么办?
实验
先来建一个测试库:
建两张有外键关系的表:
先为 office 表灌入一些基础数据:
然后为 user 表灌入支持外键的数据:
来看一下我们生成的效果:
可以看到生成工具为 office1 和 office2 两个外键列都生成了符合外键规范的数据:
而外键数据的采样数量正是 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 的技术内容,你们还有什么想知道的吗?赶紧留言告诉小编吧!