问题:请讲下mysql执行了delete操作,数据真的被删除了吗

分析:这个问题考察对mysql底层存储的理解。

回答要点:

主要从以下几点去考虑,

1、肯定没有真正删除?

2、为什么这样设计?

mysql执行delete操作后,存储在硬盘上的数据没有被删除,只不过在记录行上做了逻辑删除,即通过删除标识位实现。

因为移除它们之后,很多其他的记录需要在磁盘上重新排列,这样会消耗大量的性能,比如如果是一张大表,存在索引,删除了其中一行,那么整个索引结构就会发生变化,随之而来的是要改变索引结构,必将带来磁盘IO,大家都知道磁盘IO是很浪费性能的。所有被删除的记录都会组成一个垃圾链表,这个链表中记录占用的空间叫做可重用空间,之后有新记录插入的时候可能把已删除记录占用的空间覆盖掉。

java面试一日一题:mysql执行delete数据真的被删除了吗的更多相关文章

  1. java面试一日一题:讲下mysql中的undolog

    问题:请讲下mysql中undo log的作用 分析:mysql中有很多日志,例,bin log undo log redo log,要弄清楚这些日志的作用,就要了解这些日志出现的背景及要解决的问题: ...

  2. java面试一日一题:mysql中常用的存储引擎有哪些?

    问题:请讲下mysql中常用的引擎有哪些? 分析:该问题主要考察对mysql存储引擎的理解,及区别是什么? 回答要点: 主要从以下几点去考虑, 1.mysql的存储引擎的基本概念? 2.mysql中常 ...

  3. java面试一日一题:讲下在什么情况下会发生类加载

    问题:请讲下在什么情况下会发生类加载? 分析:该问题主要考察对java中类加载的知识,什么是类加载,为什么会发生类加载,什么情况下发生类加载? 回答要点: 主要从以下几点去考虑 1.什么是类加载: 2 ...

  4. java面试一日一题:java中的垃圾回收器

    问题:请讲下java中垃圾回收器有哪些? 分析:该问题主要考察hotspot虚拟机下实现的垃圾回收器 回答要点: 主要从以下几点去考虑, 1.垃圾回收器的种类 2.每种垃圾回收器的着重点是什么 前边的 ...

  5. java面试一日一题:java中垃圾回收算法有哪些

    问题:请讲下在java中有哪些垃圾回收算法 分析:该问题主要考察对java中垃圾回收的算法以及使用场景 回答要点: 主要从以下几点去考虑, 1.GC回收算法有哪些 2.每种算法的使用场景 3.基于垃圾 ...

  6. java面试一日一题:mysql事务是如何实现的

    问题:请讲下mysql的事务是如何实现的 分析:该问题主要考察对事务的理解及实现方式: 回答要点: 主要从以下几点去考虑, 1.对事务的概念的理解? 2.事务的实现方式? 讲到mysql的事务,很快可 ...

  7. java面试一日一题:讲对mysql的MVCC的理解

    问题:请讲下对mysql中MVCC的理解 分析:这个问题要回答的是对MVCC的理解,以及MVCC解决了什么问题这几个方面入手. 回答要点: 主要从以下几点去考虑, 1.什么是MVCC? 2.MVCC用 ...

  8. java面试一日一题:讲下mysql中的索引

    问题:请讲下mysql中的索引 分析:mysql中有很多索引,要对对这些索引有所掌握,还要弄清楚每种索引的本质? 回答要点: 主要从以下几点去考虑 1.索引的本质是什么 2.mysql的索引分类: 3 ...

  9. java面试一日一题:请讲下对mysql的理解

    问题:请讲下对mysql的理解 分析:该问题主要考察对mysql的理解,基本概念及sql的执行流程 回答要点: 主要从以下几点去考虑, 1.mysql的整体架构? 2.mysql中每一个组件的作用? ...

  10. java面试一日一题:mysql中的自增主键

    问题:请讲下mysql中的自增主键 分析:该问题主要考察对mysql中自增主键的掌握,使用场景及如何设置 回答要点: 主要从以下几点去考虑 1.什么自增主键 2.使用场景是什么: 3.innodb_a ...

随机推荐

  1. Ceph对象网关,多区域网关

    目录 Ceph对象网关,多区域网关 1. 文件系统与对象存储的区别 1.1 对象存储使用场景 1.2 对象存储的接口标准 1.3 桶(bucket) 2. rgw 2.1 对象存储认证 2.2 对象网 ...

  2. itest(爱测试) 开源接口测试,敏捷测试管理平台10.0.0RC1 发布,重点增加压测功能

    一:itest work 简介 itest work 开源敏捷测试管理,包含极简的任务管理,测试管理,缺陷管理,测试环境管理,接口测试,接口Mock,还有压测 ,又有丰富的统计分析,8合1工作站.可按 ...

  3. linux的账号和组

    1.0 账号与用户组 1.1 用户标识符:UID,GID 虽然我们登陆Linux主机的时候输入的是账号,但其实Linux主机并不会直接认识你的账号名称,账号只是为了方便人. 一个文件如何判断他的拥有者 ...

  4. 重写学习 localStorage 与 sessionStorage

    localStorage 与 sessionStorage localStorage 与 sessionStorage 很多小伙伴对它们俩都很熟悉了: 最熟悉的莫过下面这2条 1,localStora ...

  5. webpack js兼容处理

    webpack在不需要引入任何loader可以对于js进行打包处理,但是它不会对于js兼容性进行任务的处理,而我们编写的项目是需要在不同的浏览器中运行的,此时就需要对于js的兼容性在打包过程中进行对应 ...

  6. 2023CSP-S游记

    2023 CSP-S 游记 赛前 上午去花卉市场看了半天花,算是放松放松,主要是为了晚上给干妈过50岁生日. 还以为是 2 点开始,1 点 40 多就到了,然后去买了杯奶茶,然后进场. 结果我是第一考 ...

  7. 腾讯手游助手 WIN11 蓝屏 DPC_WATCHDOG_VIOLATION

    DPC_WATCHDOG_VIOLATION 退出QQ,或者下载最新版本QQ.

  8. Xcode 配置账号

    Xcode 配置开发者账号 简介:在iOS 开发过程中,要打包到手机上是需要登陆账号和配置对应证书的. 配置账号 打开Xcode -> Preferences -> Accounts -& ...

  9. linux nginx命令 查找目录和重启

    #查看nginx进程 [root@LinuxServer]$ps -aux | grep nginx root 3229 0.0 0.0 112812 972 pts/0 S+ 16:50 0:00 ...

  10. mybatis sqlmap sql in 查询

    <select id="selectBlogs" parameterType="map"> SELECT * FROM blog WHERE use ...