MySQL 为什么表的数据删除一般,表文件大小不变?
日常读书笔记
- 前提------针对InnoDB引擎
- InnoDB表结构
- 为什么删除一半,表的大小不变?
- 参数
- 数据删除的流程
- 数据页的复用和表的复用不一致,因为结构是B+树,有序,删除过程会造成空洞
- 不止删除,插入也会造成空洞
- 结论:大量增删改操作的表,都是可能存在空洞的
- 那要怎么做才能删除干净呢?
- 本质----去除B+树上的空洞
- 重建表
- 1.新建跟A结构一样的表格
- 2.按主键递增的顺序,把数据一行一行读出来后插入到B中,并把B当成临时表(此时如果有对A插入等操作,直接对B进行操作)
- 3.用B替代A
- 指令—alter table A engine=InnoDB
- 缺点—这个过程不是online的
- Online DDL
- 流程
- 比较安全的操作----Github上的gh-ost
- 拓展
- inplace
- inplace和Online的区别
MySQL 为什么表的数据删除一般,表文件大小不变?相关推荐
- MySQL 定时任务event 按天建表 并将前一天数据导入新建的表中并删除总表数据 实现分表功能
需求:实现日志系统保存日志信息到数据库,由于日志信息量巨大,需要每天一张表来管理数据. 思路:总表不能改变,因为代码中SQL语句已经写死,表名不能改变;因此我们每天定时将总表数据导入到新表中,并将总表 ...
- 表间数据复制--SELECT表中的数据插入到新的表中(ORACLE,MSSQL)
表间数据复制--SELECT表中的数据插入到新的表中 --在Oracle 9i中 CREATE TABLE scott.test AS (SELECT DISTINCT empno,ename,hir ...
- java实现将A表数据转移到B表_解决用B表跟新A表数据,如果A表中没有,则把B表的数据插入A表(merge into)...
作用:merge into 解决用B表跟新A表数据,如果A表中没有,则把B表的数据插入A表: 语法: MERGE INTO [your table-name] [rename your table h ...
- Linkflow+表单工具:赋能表单数据,提升表单营销能力
前言 本文旨在帮助企业实现敏捷高效运营,提升用户数据运营效能.在这里,我们将提供Linkflow+表单工具的组合场景玩法,以帮助企业提升表单营销能力,更好实现用户精细化运营和自动化营销. 如果您有以下 ...
- Oracle中用system存数据,【学习笔记】Oracle表空间 数据存放system表空间影响数据库性能...
天萃荷净 分享一篇,关于Oracle数据库system表空间研究,不能将用户数据存放在system表空间的原因 为什么不建议客户把业务数据存放到SYSTEM表空间中,一直想通过试验的数据来说明问题,今 ...
- 【python之操作注册表】Python删除注册表节点下的值
[python操作注册表]Python删除注册表节点下的值 背景 本来是别的平台的一个bug,以为自己去沟通然后让他们修就好了,结果又是这样别人的坑自己来填.主要是在卸载的时候要删除注册表下的所有节点 ...
- mysql 删除表数据_主外键关联表的数据删除策略
说个题外话,我从来没想过会被拼多多这款软件所魔怔,他的这种社交营销的能力,实在是太强了,在怂恿之下,开始给儿子拼个这个, 各位有空帮砍下,https://w.url.cn/s/AzlPAB9,或者扫下 ...
- mysql isreg_`Innodb` MySQL中如何优雅的删除大表跑路
最近很想写写MySQL相关的内容,就从这个话题出发吧 有人说删MySQL表谁不会 不就是 drop table TABLENAME 如果在生产环境中,你对一张TB级别的大表,敲下这行命令 那么你的主管 ...
- mysql 查询导入的数据_MySql多表查询及数据导入
MySQL高级 外键(foreign key) 定义 让当前表字段的值在另一个表的范围内选择 语法 foreign key(参考字段名) references 主表(被参考字段名) on delete ...
最新文章
- 不会英语计算机开车和,驾校学车的那些事儿——技术篇
- 如何寻找属于自己的高富帅和大公司!
- laravel 分词搜索匹配度_elasticsearch基础笔记9-elasticsearch 词项全文搜索
- iPhone 12系列价格曝光:起步价竟比iPhone 11还低?
- Tideways+Xhgui搭建非侵入式php监控平台
- 威胁情报 设备之外的安全能力
- 【iOS开发】使用XCode 10添加Launch Image(启动图片)
- 数据分享 — 国内外常用夜间灯光数据产品介绍
- 用数组循环实现矩阵乘法php,C++一维数组实现矩阵的转置与乘法
- 编写程序模拟用户输入手机号码、邮箱号码、座机号码,验证格式是否正确并给出提示,直到格式输入正确为止
- 2022年全球市场激光直接成像系统(LDI)总体规模、主要生产商、主要地区、产品和应用细分研究报告
- AD19绘制原理图(阻容,IC,排针)
- Autodesk的免费的CAD软件试用版下载地址
- 【PyQt】PyQt+百度API实现图像识别应用(附代码)
- EditPlus5注册机
- 2020中科大计算机分数线,2020年中国科学技术大学强基计划入围分数线,录取分数线,中国科大强基计划笔试、面试...
- 海皇戟3黑成功,刚入门黑苹果,用5个软件搞定,菜鸟级双系统安装
- 个人简历(java基础入门)
- 牛奶可乐经济学之Q1:为什么牛奶装在方盒子里卖,可乐却装在圆瓶子里卖?
- 森林火灾算法c语言,森林火灾的卫星监测是通过()监测来实现。
热门文章
- Entityframework Code First 系列之项目搭建
- Windows 10 UWP开发:如何不让界面卡死
- linker command failed with exit code 1 (use -v to see invocation),经典Xcode编译错误的出现和解决!...
- Qt5:为窗口 创建工具栏 toobar
- Go 语言的包依赖管理
- Btrfs入门(一)
- Android 最火的高速开发框架xUtils
- 【Bootstrap-插件使用】Jcrop+fileinput组合实现头像上传功能
- SHGetFileInfo函数详解
- 忠告28:奥纳西斯:处处留心皆学问