Skip to content

Latest commit

 

History

History
209 lines (98 loc) · 6.15 KB

README.md

File metadata and controls

209 lines (98 loc) · 6.15 KB

高频选择题

数据库理论知识

0、基本概念

1、关系型和非关系型数据库

2、事务四大特性(ACID)

​ 2-1、关系型数据库的四大特性在得不到保障的情况下会怎样

​ 2-2、数据库如何保证一致性

​ 2-3、数据库如何保证原子性

​ 2-4、数据库如何保证持久性

3、数据库隔离级别

4、数据库并发事务会带来哪些问题

5、数据库中的主键、超键、候选键、外键是什么

6、数据库三大范式和反范式

7、视图的作用是什么?可以更改吗?那游标呢?

8、你知道哪些数据库结构优化的手段

9、关于拆分数据表你了解哪些

10、数据库为什么要进行分库和分表

11、数据库悲观锁和乐观锁的原理和应用场景分别有什么?

​ 11-1、简述乐观锁和悲观锁

12、说一下数据库表锁和行锁

SQL

20、说一说Drop、Delete与Truncate的共同点和区别

21、SQL中的NOW()和CURRENT_DATE()两个函数有什么区别

22、SQL语法中内连接、自连接、外连接(左、右、全)、交叉连接的区别分别是什么?

应用

50、数据库高并发是我们经常会遇到的,你有什么好的解决方案吗?

MySQL关系型数据库

超高频考点:索引

1、为什么使用索引

​ 1-1、使用索引的注意事项

​ 1-2、MySQL 索引使用的注意事项

​ 1-3、创建索引时需要注意什么

​ 1-4、索引如何提高查询速度的:将无序的数据变成相对有序的数据

​ 1-5、为什么不对表总的每一列创建一个索引呢

2、MySQL四种索引类型

​ 2-1、MySQL中有哪些索引

​ 2-2、覆盖索引是什么

​ 2-3、什么是聚合索引

​ 2-4、什么是非聚合索引

​ 2-5、聚集索引与非聚集索引的区别是什么

​ 2-6、简述辅助索引与回表查询

​ 2-7、简述联合索引和最左匹配原则

3、文件索引和数据库索引为什么使用B+树

​ 3-1、数据库索引采用B+树而不是B树

​ 3-2、使用B+树而不是红黑树

​ 3-3、为什么MySQL索引适用用B+树而不用hash表

4、增加B+树的路数可以降低树的高度,那么无限增加树的路数是不是可以有最优的查找效率

次高频考点:MyISAM和InnoDB

9、请你说一下MySQL引擎和区别

10、数据库引擎InnoDB与MyISAM的区别

​ 10-1、MyISAM和InnoDB实现B树索引方式的区别是什么

​ 10-2、简述InnoDB存储引擎

11、InnoDB为什么要用自增id作为主键

MySQL

18、锁

​ 18-1、简述MySQL中的按粒度的锁分类

​ 18-2、简述MySQL的共享锁排它锁

19、简述MySQL的架构

​ 19-1、请问MySQL的端口号是多少,如何修改这个端口号

20、你了解MySQL的内部构造吗?一般可以分为哪两个部分?

21、说一下MySQL是如何执行一条SQL的?具体步骤有哪些?

​ 21-1、简述MySQL优化流程

22、MySQL中CHAR和VARCHAR的区别有哪些?

23、MySQL中为什么要有事务回滚机制?

24、MySQL优化了解吗?说一下从哪些方面可以做到性能优化?

25、什么是MVCC

26、简述MySQL中的log

​ 26-1、两阶段提交是什么

​ 26-2、只靠binlog可以支持数据库崩溃恢复吗

​ 26-3、InnoDB如何保证事务的原子性、持久性和一致性?

​ 26-4、WAL技术是什么?

27、简述MySQL主从复制

28、MySQL是如何保证主备一致的?

29、简述MySQL使用EXPLAIN 的关键字段

场景题

40、一道场景题:假如你所在的公司选择MySQL数据库作数据存储,一天五万条以上的增量,预计运维三年,你有哪些优化手段?

NoSQL非关系型数据库——Redis

  1. Redis是什么
  2. Redis的底层数据结构
  3. Redis常见数据结构以及使用场景分别是什么?
  4. 有MySQL不就够用了吗?为什么要用Redis这种新的数据库?
  5. C++中的Map也是一种缓存型数据结构,为什么不用Map,而选择Redis做缓存?
  6. Memcached与Redis的区别都有哪些?
  7. 缓存中常说的热点数据和冷数据是什么?
  8. Redis 为什么是单线程的而不采用多线程方案?
  9. 了解Redis的线程模型吗?可以大致说说吗?
  10. Redis设置过期时间的两种方案是什么?
  11. 缓存雪崩、缓存穿透、缓存预热、缓存更新、缓存击穿、缓存降级
  12. Redis持久化机制可以说一说吗?
  13. AOF重写了解吗?可以简单说说吗?
  14. 是否使用Redis集群,集群的原理是什么
  15. 如何解决Redis的并发竞争Key问题
  16. 如何保证缓存与数据库双写时的数据一致性
  17. 数据为什么会出现不一致的情况?
  18. 常见的数据优化方案你了解吗?
  19. 请你来说一说Redis的定时机制怎么实现的