-
Part01-Py基础篇(80)
-
Part02-网络编程和并发(34)
-
Part03-数据库和缓存(46)
-
Part04-前端框架和其他(155)
Part01-Py基础篇(80)
Part02-网络编程和并发(34)
Part03-数据库和缓存(46)
1、列举常见的关系型数据库和非关系型数据库都有哪些?
1.1 关系型数据库:Oracle、MySQL、DB2、Microsoft SQL Server、PostgreSQL、Microsoft Access、SQLite、Hive;
1.2 非关系型数据库(NoSQL):MongoDB、Redis、Elasticsearch、Cassandra、HBase
详情见权威的数据库排行榜:https://db-engines.com/en/ranking
1.3 关系型与非关系型数据库的区别:
-
关系型数据库
1、特点:
2、优点:
3、缺点:
- 数据读写必须经过sql解析,大量数据、高并发下读写性能不足;
- 为保证数据一致性,需要加锁,影响并发操作;
- 无法适应非结构化的存储;
- 大量数据集中到一台服务区处理,使服务器不堪重负;
- “阻抗失谐”,即数据库中存储的对象与实际的对象实体有一定的差别;
- 扩展困难;
- 数据库庞大,价格昂贵;
-
NOSql数据库
1、特点:
- 非结构化的存储;
- 基于多维关系模型;
- 部署容易,开源免费,成本低;
2、优点:
- 处理高并发、大批量数据的能力强;
- 支持分布式集群,负载均衡,性能高;
- 解决“阻抗失谐”问题;
- 内存级数据库,查询速度快;
- 存储格式多,支持key-value形式、文档形式、图片形式;
- 没有多表连接查询机制的限制,扩展性高;
3、缺点:
- 技术起步晚,维护工具以及技术资料有限;
- 不支持sql工业标准;
- 没有join等复杂的连接操作;
- 事务处理能力弱;
- 没有完整性约束,对于复杂业务场景支持较差;
2、MySQL常见数据库存储引擎及比较?
2.1 常见存储引擎;
2.2 如何选择?
3、简述数据三大范式?
4、什么是事务?MySQL如何支持事务?
5、简述数据库设计中一对多和多对多的应用场景?
6、如何基于数据库实现商品计数器?
7、常见SQL(必备)
8、简述触发器、函数、视图以及存储过程?
9、MySQL索引分类
10、索引在什么情况下遵循最左前缀的规则?
11、主键和外键的区别?
12、MySQL常见的函数?
13、列举创建索引但是无法命中索引的8种情况?
14、如何开启慢查询日志?
15、数据库导入导出命令(结构+数据)
16、数据库优化方案?
17、char和varchar的区别?
18、简述MySQL的执行计划?
19、在对name做了唯一索引的前提下,简述以下区别?
select * from tb where name = ‘Oldboy-Wupeiqi’ select * from tb where name = ‘Oldboy-Wupeiqi’ limit 1