MySQL面试题

主键和索引的区别?
1主键是为了标识数据库记录唯一性,不允许记录重复,且键值不能为空,主键也是一个特殊索引。数据表中只允许有一个主键,但是可以有多个索引
2.索引可以提高查询效率,就相当于字典的目录,可以通过它很快查询到想要的结果,而不需要进行全表扫描。.唯一索引则标识索引值唯一,可以由一个或者几个字段组成,一个表可以有多个唯一索引

唯一索引与主键索引的区别
区别:1、主键创建后一定包含一个唯一性索引,唯一性索引不一定是主键;3、唯一性索引列允许空值, 主键不允许;4、主键可被其他表引为外键,唯一索引不能;5、一个表只能创建一个主键,但可创建多个唯一索引。

第三范式是什么?使用第三范式的好处是什么?
1NF强调字段是最小单元,不可再分
2NF强调在1NF基础上必须要有主键和非主键字段必须完全依赖于主键,也就是说 不能部分依赖
3MF强调在2NF基础上 非主键字段必须直接依赖于主键,也就是说不能传递依赖(间接依赖)。
在数据库设计的时候满足范式要求可以很大限度的合理的处理数据,减少数据的冗余,即多余的用数据,

mysql的存储引擎
mysql b+树、索引、最左匹配原则
**MySQL的事务特性?**答:ACID,原子性,隔离性,持久性,一致性

**隔离级别?**答:未提交读,已提交读,可重复读,可串行化。顺便说了InnoDB对可重复读下幻读的解决方案。next-key lock锁可以避免幻读

**有哪些数据结构可以作为索引呢?**答:B+树。追问还有吗?答:也了解过hash索引,全文索引,位图索引

聚簇索引和非聚簇索引的区别?
**MySQL还有哪些存储引擎?**答:InnoDB、MyIsam
InnoDB和MyIsam的区别?bulabulabula

**MyIsam适用于什么场景?**答:全文索引,空间数据。追问:还有吗?答:不知道。。。
**sql慢查询的解决方案?**答:建索引,用expalin,复杂查询转换为小查询…
InnoDB为什么使用B+树作为存储引擎
什么是索引,有哪些索引,索引的缺点?
B树和B+树有什么优缺点?
事务的特性(ACID)?

事务的隔离级别?什么是幻读?

MySQL默认的执行引擎是什么?它的默认隔离级别是什么?那可以避免幻读么?(我说不可以,面试官说那我就没法往下问了。我估计他是想问我MySQL 的MVCC和日志实现事务的隔离级别)
17.MySQL的了解,两个引擎区别
18.索引实效的情况
3.Mysql的事务实现原理?隔离级别?锁有哪些?聚簇索引?group by实现原理?b+树和b树?脏读幻读不可重复读?MVCC实现原理?
数据库引擎结构、区别
索引底层结构,插入数据索引结构的变化等
索引的优化方法,以及为什么(就是优化底层是怎么实现)
索引使用(优化器如何界定)
数据库几种日志,以及如何刷新,区别
数据库三个线程用处
数据库事务详细(不是指ACID几个性质,就是事务到底是基于什么实现的
1、数据库隔离级别、底层原理、每个级别如何解决上个级别的问题?
2、mysql 间隙锁实现方式
索引在哪些情况下会失效

(1)对列进行计算或者是使用函数,则该列的索引会失效

(2)不匹配数据类型,会造成索引失效

(3)where语句中使用了IS NULL或者IS NOT NULL,会造成索引失效

(4)使用了反向操作,该索引将不起作用

(5)使用了link操作,索引就将不起作用

(6)在WHERE中使用OR时,有一个列没有索引,那么其它列的索引将不起作

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

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

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值