MySQL进阶45讲【31】我查这么多数据,会不会把数据库内存打爆?

1 前言

有人可能会有这样一个疑问:我的主机内存只有100G,现在要对一个200G的大表做全表扫描,会不会把数据库主机的内存用光了?

这个问题确实值得担心,被系统OOM(out of memory)可不是闹着玩的。但是,反过来想想,逻辑备份的时候,可不就是做整库扫描吗?如果这样就会把内存吃光,逻辑备份不是早就挂了?

所以说,对大表做全表扫描,看来应该是没问题的。但是,这个流程到底是怎么样的呢?

2 全表扫描对server层的影响

假设,我们现在要对一个200G的InnoDB表db1. t,执行一个全表扫描。当然,要把扫描结果保存在客户端,会使用类似这样的命令:

mysql -h$host -P$port -u$user -p$pwd -e "select * from db1.t" > $target_file

InnoDB的数据是保存在主键索引上的,所以全表扫描实际上是直接扫描

  • 22
    点赞
  • 12
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
【资源介绍】 基于微服务的车票管理系统源码+项目说明+sql数据库.tar 功能描述:微服务车票系统,分管理员和普通用户两种角色。除了基本功能,可实现限流,一人一单,每日热搜等功能 #### 涉及技术栈:MySQL,Redis,RabbitMQ,MybatisPlus,SpringBoot,SpringCloud,Seata,Sentinel,Gateway,Jsoup,Nginx,Docker *** >管理员样例 >> 账号:wsh >> 密码:wsh >> >普通用户样例 >> 账号:test >> 密码:test >> >云服务器配置:内存2核8G >[测试地址](http://123.207.210.137/) *** ## 设计流程 ### 1. 基本框架 + SpringBoot构建后台管理系统,Redis+Token+MVC拦截器做权限校验 + 基于Nacos做服务和配置中心,共包含用户、订单、车次、事务、网关、验证码六个服务 + :star:利用OpenFeign做同步调用,利用RabbitMQ异步调用验证码服务 ### 2. 数据库及事务 + 基于MySQL存储业务数据,相关字段建立联合索引 + 基于Redis缓存Token、验证码、MQ分布式ID和每日热搜,基于Redisson解决一人一单 + :star:基于Seata解决订单和车次服务之间的分布式事务 ### 3. 流量与进程监控 + :star:基于Gateway针对同一IP的所有请求做令牌桶限流,基于Sentinel对热门车次的购票请求做限流降级 + 基于jmx和visualVM监控业务服务的内存和CPU消耗 ### 4. 网络编程 + 利用Httpclient调用第三方API,利用FastJSON解析响应 + :star:利用Scheduled开启CompletableFuture任务,利用Jsoup每日定期爬取新闻热搜 【备注】 1、该资源内项目代码都经过测试运行成功,功能ok的情况下才上传的,请放心下载使用!有问题请及时沟通交流。 2、适用人群:计算机相关专业(如计科、信息安全、数据科学与大数据技术、人工智能、通信、物联网、自动化、电子信息等)在校学生、专业老师或者企业员工下载使用。 3、用途:项目具有较高的学习借鉴价值,也适用于小白学习入门进阶。当然也可作为毕设项目、课程设计、大作业、初期项目立项演示等。 4、如果基础还行,或者热爱钻研,亦可在此项目代码基础上进行修改添加,实现其他不同功能。 欢迎下载,沟通交流,互相学习,共同进步!
【项目介绍】 基于jsp+servlet+javaBean的图书管理系统+项目说明+sql数据库(期末大作业).zip **开发环境**: windows+jdk1.8+Tomcat9+IDEA+mysql 注意:我用的IDE是`jetbrains IntelliJ IDEA`,不知道导入Eclipse出现什么问题。 - **注意事项**:调试之前请创建名为library的数据库,相关sql脚本为项目根目录下`library.sql`. - **存在问题**: 因为Tomcat的版本而出现部分异常 - **关于图片**: 本项目涉及图片上传与富文本编辑器,但是,每当我们开始Run或者Debug项目,`tomcat/webapps/ROOT`这个项目被清空然后重新写入编译好的Java代码。由于图片保存在本项目`src/main/webapp/assets/bookImg`下,所以每次运行,项目图片清空。当然也可以将图片写入项目目录外部,但是前台展示图片用绝对路径的话就相当麻烦了,此处我不纠结了。只要tomcat一直开着,图片上传是完全没问题的。 - **在线预览**: [图书管理系统](http://zyang.top:8080/LibrarySystem),用户名密码都为`admin`。目前放在新浪SEA容器上(渣渣配置,只分配256M内存,按小时和流量计费,求各位大佬扫底部二维码施舍点),如果你也想把项目部署到WEB上,不妨点击[此链接](https://www.sinacloud.com/public/login/inviter/gaimrn-mddmzeKWrhKW3aIF4jWh9eJtrfnymdg.html)注册`新浪SEA`并`实名认证`,可免费试用几天,还可以延长我的天数,何乐而不为呢!我的Centos服务器不知道为啥不能正常运行。 【备注】 1.项目代码均经过功能验证ok,确保稳定可靠运行。欢迎下载食用体验! 2.主要针对各个计算机相关专业,包括计算机科学、信息安全、数据科学与大数据技术、人工智能、通信、物联网等领域的在校学生、专业教师、企业员工。 3.项目具有丰富的拓展空间,不仅可作为入门进阶,也可直接作为毕设、课程设计、大作业、初期项目立项演示等用途。 4.当然也鼓励大家基于此进行二次开发。在使用过程中,如有问题或建议,请及时沟通。 5.期待你能在项目中找到乐趣和灵感,也欢迎你的分享和反馈!

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

吴名氏.

你的鼓励是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值