• 首页 首页 icon
  • 工具库 工具库 icon
    • IP查询 IP查询 icon
  • 内容库 内容库 icon
    • 快讯库 快讯库 icon
    • 精品库 精品库 icon
    • 问答库 问答库 icon
  • 更多 更多 icon
    • 服务条款 服务条款 icon

每日进步一点点系列七道精选 数据库 实习面试题

武飞扬头像
执 梗
帮助1

前言

   最近又到了找实习热门时间,每天坚持更新Java实习岗位相关的面试题,不仅是自己学习总结,也为了帮助大家一起准备,每天进步一点点,坚持不懈,水滴石穿,一起拿下offer

1.InnoDB和MyISAM的区别

InnoDB是具有事务、回滚和崩溃修复能力的事务安全型引擎,它可以实现行级锁来保证高性能的大量数据中的并发操作

MyISAM是具有默认支持全文索引、压缩功能及较高查询性能的非事务性引擎。

InnoDB是MySQL5.5之后的默认引擎, 行锁是通过给索引上加锁来实现的,只有通过索引条件检索数据,innoDB才使用行锁,否则,使用表锁。

从以下四个角度对比:

  • 1.事务InnoDB支持事务,MyISAM不支持
  • 2.数据锁InnoDB支持行级锁,MyISAM支持表级锁
  • 3.读写性能InnoDB增删改性能更优,MyISAM查询性能更优。
  • 4.全文索引InnoDB不支持(但可通过插件等方式支持);MyISAM默认支持。
  • 5.外键InnoDB支持外键,MyISAM不支持。

2.数据库的索引是什么结构,为什么不用哈希表?

Mysql的索引由B 树实现, 哈希表的查询效率的确最高,时间复杂度 O ( 1 ) O(1) O(1),但是它要求将所有数据载入内存,而数据库存储的数据量级可能会非常大,全部载入内存基本上是不可能实现的; B 树可以分段加载需要的节点数据,可以在内存资源有限的前提下,极大提高查询效率。

3.聚簇索引和非聚簇索引

两者主要区别是数据和索引是否分离。聚簇索引是将数据与索引存储到一起,找到索引也就找到了数据;而非聚簇索引是将数据和索引存储分离开,索引树的叶子节点存储了数据行的地址。

聚簇索引:索引结果和数据一起存放的索引。 优点:聚簇索引的查询速度非常快,因为聚簇索引本身就是一个B 树,数据节点属于有序的,当定位到索引上的时候就相当于找到了数据。 缺点:更新的时候代价大,依赖有序的数据

非聚簇索引:索引结构和数据分开存放的索引。 优点:更新代价比聚簇索引小 缺点:依赖有序的数据,可能会二次回表查找

4.索引怎么实现的B 树,为什么选这个数据结构?

  1. 索引的本质就是通过预排序 树型结构来加快检索效率,而MySQL中使用InnoDB和MyISAM引擎时都使用了B 树实现索引
  2. 在二叉查找树上查找一个数据时,当出现海量数据时,查找效率将大大折扣,B 树是一棵平衡多路查找树,可以有效减少磁盘IO,同时B 树增加了叶子结点之间的连接,能保证范围查找时找到起点和终点后能快速取出需要的数据。

5.MySql 的主从同步是如何实现的?

复制(replication)是MySQL数据库提供的一种高可用高性能的解决方案,一般用来建立大型的应用。总体来说,replication的工作原理分为以下3个步骤:

  1. 主服务器(master)把数据更改记录到二进制日志(binlog)中。
  2. 从服务器(slave)把主服务器的二进制日志复制到自己的中继日志(relay log)中。
  3. 从服务器重做中继日志中的日志,把更改应用到自己的数据库上,以达到数据的最终一致性。

6.Mysql 什么时候会进行全局扫描

全表扫描,就是一条一条记录的遍历,直到表中的最后一条记录。通常情况下,对没有建立索引的表查询都是全表扫描
但是有时候表中即使有索引,如果使用不当,也会造成全表扫描。

  • 1.条件中使用了null
  • 2.使用or作为连接条件
  • 3.使用了not in或者in
  • 4.使用模糊查询
  • 5.使用了!=或者<>
  • 6.使用count(*)
  • 7.使用参数作为条件时

7.索引的优化

为了优化索引,我们应该合理的创建索引,比如以下情况的列适合创建索引:

  • 1.经常被查询的列
  • 2.经常用于表连接的列
  • 3.经常排序分组的列

以及创建索引时的四个不要

  • 1.选择性低的字段不创建索引(比如性别、状态等)
  • 2.很少查询的列不要创建索引
  • 3.大数据类型的字段不要创建索引
  • 4.尽量不要使用NULL

这篇好文章是转载于:学新通技术网

  • 版权申明: 本站部分内容来自互联网,仅供学习及演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,请提供相关证据及您的身份证明,我们将在收到邮件后48小时内删除。
  • 本站站名: 学新通技术网
  • 本文地址: /boutique/detail/tanhfijbbb
系列文章
更多 icon
同类精品
更多 icon
继续加载