问题:
我已经有表结构,想造一些实验数据。
除了用存储过程和自己写程序,还有什么快速的方法?
实验:
我们先建一个库,

创建一张表,让表的列多一些,

下载好我们需要的工具,

现在我们就可以来生成数据了,

在比较一般的虚拟机上,为一个 26 列的表生成十万条数据,大概需要近 4 分钟的时间。
来看一下生成的数据:

值得一提的是,其中的文本生成规则,对应不同长度的字段,生成的规则也不同,文档如图:

Lorem Ipsum 并不是随机文本。以下引自
Lorem Ipsum 始于西塞罗(Cicero)在公元前 45 年作的 “de Finibus Bonorum et Malorum”(善恶之尽)里 1.10.32 和 1.10.33 章节。这本书是一本关于道德理论的论述,曾在文艺复兴时期非常流行。
另外, MySQL _random_load_data 工具也支持根据外键引用关系,生成外键的相关数据。
结论:
percona 为我们贡献了不少好工具,mysql_random_load_data 是其中大家比较陌生的一款。
我们经常需要做一些实验,用 sysbench、mysqlslap 等工具,自定义表结构都比较麻烦;用 generatedata 等数据生成工具,需要人工将表结构翻译成工具能识别的格式。
mysql_random_load_data 使用起来清晰简单。其实 golang 语言编写,修改起来也比较简单。
大家如有对其的改进需求,也可回复本文,如果有一定数量的需求,我们也可以开一个分支对其进行增强。
关于 MySQL 的技术内容,你们还有什么想知道的吗?赶紧留言告诉小编吧!
关于爱可生
爱可生成立于2003年,依托于融合、开放、创新的数据处理技术和服务能力,为大型行业用户的特定场景提供深度挖掘数据价值的解决方案。
公司持续积累的核心关键技术,覆盖到 分布式数据库 集群、 云数据 平台、数据库大体量运管平台、海量 数据集成 于存储、清洗与治理、人工智能分析挖掘、 可视化 展现、安全与隐私保护等多个领域。
公司已与多个行业内的专业公司建立了长期伙伴关系,不断促进新技术与行业知识相结合,为用户寻求新的数据驱动的价值增长点。公司已在金融、能源电力、广电、政府等行业取得了众多大型用户典型成功案例,获得了市场的认可和业务的持续增长。
