MySQL快速生成大量测试数据方法(无需编写代码、或存储过程)

您所在的位置:网站首页 批量生成数据表的方法 MySQL快速生成大量测试数据方法(无需编写代码、或存储过程)

MySQL快速生成大量测试数据方法(无需编写代码、或存储过程)

2024-07-16 16:33| 来源: 网络整理| 查看: 265

有时我们需要在数据库中构建大量的基础数据(比如千万级别数据)进行查询操作的性能测试或者 sql 优化。我们通常会采用如下两种方式来创建测试数据:

方式一:编写代码,通过代码批量插库

方式二:编写存储过程和函数执行

但这两种方法都略显麻烦,本文使用 MySQL 自带的压力测试工具 mysqlslap 来实现测试数据的构建。如果想要了解 mysqlslap 更详细的用法,可以参考我之前写的文章(点击查看)

1,准备工作

假设我们要在 people 表里插入 1 百万条随机的测试数据,表结构如下:

原文:MySQL - 快速生成大量测试数据方法(无需编写代码、或存储过程)

2,插入数据

(1)我们执行如下命令实现数据插入,为提高效率这里开启 10 个客户端线程同时插入,总共执行 1 百万次操作:

mysqlslap -uroot -pHangge_123 --concurrency=10 --number-of-queries=1000000 --create-schema=hangge --query="INSERT INTO people(name,age) VALUES (uuid(), RAND() * 100)"

(2)执行完毕可以发现总耗时 208 秒:

原文:MySQL - 快速生成大量测试数据方法(无需编写代码、或存储过程)

(3)查看数据库,可以发现测试数据已经创建成功:

原文:MySQL - 快速生成大量测试数据方法(无需编写代码、或存储过程)

原文出自:www.hangge.com 转载请保留原文链接:https://www.hangge.com/blog/cache/detail_3071.html



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3