测试MYSQL负载 生成MYSQL测试数据的方式

通常我们使用mysql数据库服务器 以及mysql集群的时候
需要进行mysql性能以及压力测试
这个时候 我们不能使用生成环境
只能生成一批数据进行测试

本教程就是教你如何生成测试数据

测试约定
MySQL: 版本 5.1.xx Community Server
数据库: dbTest
数据表: test_data

首先 登录

mysql -uroot -p

建立数据库和表

CREATE DATABASE dbTest;
USE dbTest;
CREATE TABLE test_data (
a INT(10) NULL,
b INT(10) NULL,
c INT(10) NULL
)
ENGINE=InnoDB;

生成10万条记录 单次随机插入1000条

DELIMITER //
CREATE PROCEDURE GenerateFakeData()
BEGIN
DECLARE i INT DEFAULT 1;
WHILE i <= 100000 DO INSERT INTO tbl_data1 (a,b,c) VALUES ((SELECT floor(rand() * 1000) AS randNum), (SELECT floor(rand() * 1000) AS randNum),(SELECT floor(rand() * 1000) AS randNum)); SET i = i + 1; END WHILE; END // DELIMITER ;

USE dbTest;
CALL GenerateFakeData();

调用

最后我们进行查询测试

SELECT * FROM dbTest.tbl_data1 LIMIT 1,10;

查询10条记录

+——+——+——+
| a | b | c |
+——+——+——+
| 521 | 662 | 748 |
| 753 | 523 | 356 |
| 212 | 994 | 334 |
| 689 | 441 | 139 |
| 374 | 453 | 145 |
| 364 | 386 | 837 |
| 30 | 637 | 96 |
| 571 | 569 | 129 |
| 940 | 312 | 741 |
| 770 | 628 | 828 |
+——+——+——+
10 rows in set (0.00 sec)

是不是有数据库了?

相关:

  • mysql 生成测试数据
  • mysql生成测试数据
Scroll to top