Mysql 千万级别数据数据查询
1.构建数据
--创建MyISAM模式表方便批量跑数据 CREATE TABLE `logs1` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`logtype` varchar(255) DEFAULT NULL,
`logurl` varchar(255) DEFAULT NULL,
`logip` varchar(255) DEFAULT NULL,
`logdz` varchar(255) DEFAULT NULL,
`ladduser` varchar(255) DEFAULT NULL,
`lfadduser` varchar(255) DEFAULT NULL,
`laddtime` datetime DEFAULT NULL,
`htmlname` varchar(255) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=MyISAM AUTO_INCREMENT=1811 DEFAULT CHARSET=utf8 COMMENT='日志表';
--创建存储过程 DROP PROCEDURE IF EXISTS my_insert;
CREATE PROCEDURE my_insert()
BEGIN
DECLARE n int DEFAULT 1;
loopname:LOOP
INSERT INTO `logs1`(`logtype`,`logurl`,`logip`,`logdz`,`ladduser` ,`lfadduser`,`laddtime`,`htmlname`) VALUES ( 2, '/index', '0:0:0:0:0:0:0:1', null, null, 'null', '2018-05-03 14:02:42', '首页');
SET n=n+1;
IF n=10000000 THEN
LEAVE loopname;
END IF;
END LOOP loopname;
END; --执行存储过程
CALL my_insert();
--数据插入成功后修改表模式InnoDB 时间稍微久点
alter table `logs1` engine=InnoDB; 2.查询
(1)SELECT COUNT(id) FROM test.logs1
结果: 99999999 (2)SELECT * FROM test.logs1 ORDER BY id ASC LIMIT 100000,100
结果: [SQL] SELECT * FROM test.logs1 ORDER BY id ASC LIMIT 100000,100
受影响的行: 0
时间: 0.169s
(3)SELECT * FROM test.logs1 ORDER BY id ASC LIMIT 1000000,100
结果:[SQL] SELECT * FROM test.logs1 ORDER BY id ASC LIMIT 1000000,100
受影响的行: 0
时间: 4.644s
mysql 百万级别查询就会很慢
Mysql 千万级别数据数据查询的更多相关文章
- mysql千万级数据优化查询
我们在做一个项目,一个网站或一个app时,用户量巨增,当使用的mysql数据库中的表数据达到千万级时,可以从以下方面考滤优化: 1.在设计数据库表的时候就要考虑到优化 2.查询sql语句上的优化 3. ...
- MYSQL千万级别数据量迁移Elasticsearch5.6.1实战
从关系型库中迁移数据算是比较常见的场景,这里借助两个工具来完成本次的数据迁移,考虑到数据量并不大(不足两千万),未采用snapshot快照的形式进行. Elasticsearch-jdbc,Githu ...
- 提高mysql千万级大数据SQL查询优化几条经验
凯哥java 微信号 kaigejava 功能介绍 ...
- 提高mysql千万级大数据SQL查询优化30条经验(Mysql索引优化注意)
转自http://blog.163.com/zhangjie_0303/blog/static/9908270620146951355834/ 1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 w ...
- (转)提高mysql千万级大数据SQL查询优化30条经验(Mysql索引优化注意)
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索 ...
- (转载)提高mysql千万级大数据SQL查询优化30条经验(Mysql索引优化注意)
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索 ...
- mysql千万级大数据SQL查询优化
1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 order by 涉及的列上建立索引. 2.应尽量避免在 where 子句中对字段进行 null 值判断,否则将导致引擎放弃使用索 ...
- mysql千万级大数据SQL查询优化30条经验
转自http://blog.163.com/zhangjie_0303/blog/static/9908270620146951355834/ 1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 w ...
- Mysql千万级大数据量查询优化
来源于:https://blog.csdn.net/A350204530/article/details/79040277 1.对查询进行优化,应尽量避免全表扫描,首先应考虑在 where 及 ord ...
随机推荐
- 将 ASP.NET Core 2.0 项目升级至 ASP.NET Core 2.1.3X
在上一篇文章ASP.Net Core 运行错误 Http Error 502.5 解决办法的最后有提到说,最推荐的升级办法是从2.0升级到2.1X版本. 操作如下 项目的例子直接使用https://g ...
- H5 68-伪元素选择器
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Day14 Python基础之os/sys/hashlib模块(十二)
os模块 os.getcwd() #获取当前工作路径 os.chdir(‘dirname1/dirname2/dirname3’) #改变当前脚本的工作路径,相当于cmd下的cd os.makedi ...
- p141一致有界原则
1.Mk取sup 为什么只要取∩就好了 不应该是先并后交吗 2.为什么说是闭集?
- openstack-云计算概述
一.云计算 1.云计算解决的问题 备机准备(低配) 故障恢复 安装系统 硬件资源浪费 电力资源浪费 2.云计算概念 (1)维基百科 云计算是一种通过因特网以服务的方式提供动态可伸缩的虚拟化的资源的计算 ...
- JS_左边栏菜单
需求: 要求实现左边栏菜单点击一下就弹开,其他的隐藏.再点击一下就隐藏. 最多只能有一个菜单的详细内容会显示出来. 三个菜单实现联动效果. 代码如下: 1 <!DOCTYPE html> ...
- MySQLl导入导出SQL文件
window 1.导出整个数据库 mysqldump -u 用户名 -p 数据库名 > 导出的文件名 mysqldump -u dbuser -p dbname > dbname.sql ...
- Python之操作redis数据库
使用redis模块 一.操作redis 1.添加信息 (1)直接建key-value信息: 右键-Add New Key,手动添加key和value 右键-Console,打开控制台,写入命令 (2) ...
- CGI、FAST-CGI、PHP-CGI、PHP-FPM的关系
转自:https://www.awaimai.com/371.html 关于这一类的文章还有:https://zhuanlan.zhihu.com/p/20694204 在搭建 LAMP/LNMP 服 ...
- 【学习总结】Git学习-参考廖雪峰老师教程九-使用码云
学习总结之Git学习-总 目录: 一.Git简介 二.安装Git 三.创建版本库 四.时光机穿梭 五.远程仓库 六.分支管理 七.标签管理 八.使用GitHub 九.使用码云 十.自定义Git 期末总 ...