如何在mysql数据库生成百万条数据来测试页面加载速度

1.首先复制一条sql

在复制前,需要确定该记录是否有主键

若无,则代码非常简单,

insert into gl_energy_meter_data SELECT * from gl_energy_meter_data where dosage="12432";

复制的表名↑                                              粘贴的表名↑                        ↑ 某个字段的值最好唯一

若有主键,一般是ID,则需要随机生成新的ID

INSERT INTO tb_swing_card (
swing_card_number,
swing_card_device_id,
swing_card_serial,
swing_card_address,
swing_card_type,
swing_card_time,
swing_card_emp_id,                         这一块为复制的表的所有字段
swing_card_emp_name,
swing_card_organ_name,
swing_card_id,
swing_card_device_name,
swing_card_device_type,
swing_card_device_direction,
swing_card_organ_id,
swing_card_organ_parent_ids,
tower_id,
tower_name,
floor_id,
floor_name,
region_id,
region_name
)
SELECT
swing_card_number,
swing_card_device_id,
swing_card_serial,
swing_card_address,
swing_card_type,
swing_card_time,
swing_card_emp_id,
swing_card_emp_name,
swing_card_organ_name,
REPLACE (uuid( ), ‘-‘, ‘‘ ),            这一块为粘贴地点的所有字段,将该id改为自动生成
swing_card_device_name,
swing_card_device_type,
swing_card_device_direction,
swing_card_organ_id,
swing_card_organ_parent_ids,
tower_id,
tower_name,
floor_id,
floor_name,
region_id,
region_name
FROM
    tb_swing_card
WHERE
    swing_card_id = "5d9fe31f7359a9141d7ebb5";        所复制数据的某个字段的值(id)

此时成功生成一条数据,接来下的思路就是循环复制

2.循环一百万次执行

drop procedure if exists test_loop;
delimiter //
create procedure test_loop()           #  创建存储过程
begin
    declare i int default 1;
    while i<1000000   循环次数
    do
      #  此处复制1中代码
        set i=i+1;
    end while;
    commit;
end //
delimiter ;

SELECT * from gl_energy_meter_data;             # 复制的表名
CALL test_loop();

3.时间:10万条数据耗时3分钟左右。100万条半小时左右(不知道有没有什么更好的办法)

原文地址:https://www.cnblogs.com/zzcsza/p/11979910.html

时间: 2024-10-11 01:32:49

如何在mysql数据库生成百万条数据来测试页面加载速度的相关文章

随机获得MySQL数据库中100条数据方法 驾照题库项目 MVC架构 biz业务层的实现类 根据考试类型rand或order通过dao数据访问层接口得到数据库中100或全部数据

package com.swift.jztk.biz; import java.util.Collections; import java.util.Comparator; import java.util.HashSet; import java.util.Iterator; import java.util.List; import java.util.Random; import com.google.gson.Gson; import com.swift.jztk.bean.Result

mysql 快速生成百万条测试数据

转  https://blog.csdn.net/gooooa/article/details/54691590 1.生成思路 利用mysql内存表插入速度快的特点,先利用函数和存储过程在内存表中生成数据,然后再从内存表插入普通表中 2.创建内存表及普通表 CREATE TABLE `vote_record_memory` ( `id` INT (11) NOT NULL AUTO_INCREMENT, `user_id` VARCHAR (20) NOT NULL, `vote_id` INT

mysql数据库删除千万条数据的操作方案,直接delete会很久

在线上有一张表很大,积累了几年的消费数据,现在需要把这张表几年前的数据给清掉,数据量将近1亿,直接按年份将其中的数据delete,你会发现删了几小时都没有返回.这是因为每执行一次delete,需要同时将该行的删除操作记录作为事务记录在日志中保存以便进行回滚. ? ?最终采用的方案是: ? ? (1)抽取需要保留的数据到备份表中, ? ? (2)truncate旧表 ? ? (3)备份表中的数据再插入truncate表 我的执行实操如下: CREATE TABLE charging_record_

从数据库、页面加载速度角度思考 id设计 sku asin

w 超值套装 [小米红米4A][超值套装]小米 红米 4A 全网通 2GB内存 16GB ROM 香槟金色 移动联通电信4G手机 双卡双待[行情 报价 价格 评测]-京东  https://item.jd.com/4891234.html#crumb-wrap [小米红米4A][超值套装]小米 红米 4A 全网通 2GB内存 16GB ROM 玫瑰金色 移动联通电信4G手机 双卡双待[行情 报价 价格 评测]-京东  https://item.jd.com/4096723.html#crumb-

压缩请求数据(优化页面加载太慢之一)

1 /// <summary> 2 /// 允许压缩 3 /// </summary> 4 public class AllowCompressAttribute : System.Web.Mvc.ActionFilterAttribute 5 { 6 /// <summary> 7 /// 压缩方法 8 /// </summary> 9 public override void OnResultExecuting(ResultExecutingContex

html5体验优化页面加载的14条建议

html5体验优化页面加载的14条建议 1. fake 页 - 首屏加速目标:首屏 3s 以内因为 71% 的用户期望移动页面跟 pc 页面一样快 (3s) ,74% 的用户能容忍的响应时间为 5 秒,所以我们必须保证移动端页面有足够的速度. 方案:- 避免页面长时间白页,页面渲染只需要完整的HTML 以及 CSS- 加载结束后页面第一屏便渲染结束,然后再异步加载js- 静态资源不使用 cookie- 优化加载顺序 css头.js尾 2. 降低请求「数」- 将可合并的 CSS.JS 文件合并-

页面加载优化的14条原则

1. 尽可能的减少 HTTP 的请求数 [content] 2. 使用 CDN(Content Delivery Network) [server] 3. 添加 Expires 头(或者 Cache-control ) [server] 4. Gzip 组件 [server] 5. 将 CSS 样式放在页面的上方 [css] 6. 将脚本移动到底部(包括内联的) [javascript] 7. 避免使用 CSS 中的 Expressions [css] 8. 将 JavaScript 和 CSS

MySQL数据库如何解决大数据量存储问题

利用MySQL数据库如何解决大数据量存储问题? 各位高手您们好,我最近接手公司里一个比较棘手的问题,关于如何利用MySQL存储大数据量的问题,主要是数据库中的两张历史数据表,一张模拟量历史数据和一张开关量历史数据表,这两张表字段设计的很简单(OrderNo,Value,DataTime).基本上每张表每天可以增加几千万条数据,我想问如何存储数据才能不影响检索速度呢?需不需要换oracle数据库呢?因为我是数据库方面的新手,希望可以说的详细一点,万分感谢!!?-0-#暂时可以先考虑用infobri

MySQL数据库使用mysqldump导出数据详解

mysqldump是mysql用于转存储数据库的实用程序.它主要产生一个SQL脚本,其中包含从头重新创建数据库所必需的命令CREATE TABLE INSERT等.接下来通过本文给大家介绍MySQL数据库使用mysqldump导出数据详解,需要的朋友一起学习吧 mysqldump是mysql用于转存储数据库的客户端程序.它主要产生一系列的SQL语句,可以封装到文件,该文件包含有所有重建您的数据库所 需要的 SQL命令如CREATE DATABASE,CREATE TABLE,INSERT等等.可