Skip to content

Latest commit

 

History

History
87 lines (60 loc) · 3.01 KB

interview-database.md

File metadata and controls

87 lines (60 loc) · 3.01 KB

数据库

1.Mysql事物的隔离级别?

事务隔离级别 脏读 不可重复读 幻读
读未提交(read-uncommitted)
读已提交(read-committed)
可重复读(repeatable-read)
串行化(serializable)

相关资料

2.Innodb和Myisam的区别?

Innodb支持事务,而Myisam不支持事务
Innodb支持行级锁,而Myisam支持表级锁
Innodb支持外键,而Myisam不支持
Innodb不支持全文索引,而Myisam支持
Innodb是索引组织表, Myisam是堆表

相关资料

3.Mysql慢响应默认时间?

10s

4.Explain的含义?

explain显示了mysql如何使用索引来处理select语句以及连接表。可以帮助 选择更好的索引和写出更优化的查询语句。

5.Profile的意义以及使用场景?

Profile用来分析SQL性能的消耗分布情况。当用explain无法解决慢SQL的时 候,需要用profile来对SQL进行更细致的分析,找出SQL所花的时间大部分消耗在 哪个部分,确认SQL的性能瓶颈。

6.Redis的过期失效机制?

scan扫描+给每个key存储过期时间戳

7.Redis持久化方案aof的默认fsync时间是多长?

1s

8.Redis持久化方案rdb和aof的区别?

查看资料

9.Redis怎么查看延迟数据?(非业务操作)

可以用redis-cli工具加--latency参数可以查看延迟时间

redis-cli --latency -h 127.0.0.1 -p 6379

使用slowlog查出引发延迟的慢命令

slowlog get

10.Redis的集群怎么搭建?

查看资料

11.简单介绍下什么是缓存击穿, 缓存穿透, 缓存雪崩? 能否介绍些应对办法?

查看资料

12.关系型数据库 MySQL/PostgreSQL的索引类型? 其他数据库优化方法?

  1. https://segmentfault.com/a/1190000003072424
  2. https://tech.meituan.com/performance_tunning.html

13.介绍下数据库分库分表以及读写分离?

分库分表主要解决写的问题, 读写分离主要解决读的问题. 分库分表的策略有很多种: 平均分配, 按权重分配, 按业务分配, 一致性 hash.....
读写分离的原理大致是一台主、多台从。主提供写操作,从提供读操作.
方案可以根据以下几个因素来综合考虑:

1.数据实时性要求?
2.查询复杂度是否比较高?
3.读和写的比例即侧重点是哪一个?

方案有很多, 大家可以自行搜索, 学习总结. 这题源自微博的平台技术专家一条微博: https://m.weibo.cn/status/4265027340366901