第三章 数据库

第一章 Python基础
第二章 计算机网络
第三章 数据库
第四章 Linux
第五章 操作系统
第六章 Java基础
第七章 数据结构与算法


第三章 数据库 目录

  • MySQL索引
    • Mysql InnoDB 的索引模型
      • B树索引
      • B+树索引
    • 回表
    • 索引维护
    • 覆盖索引
    • 最左前缀原则
    • 索引下推
  • 联合索引和唯一索引的区别
  • 主键索引和唯一索引的区别
  • 索引的优缺点
  • 查询索引为什么会使得搜索更快
  • 数据库left join, inner join和where的区别
  • 一条SQL查询语句是如何执行的
    • Server层
      • (1)连接器
      • (2)查询缓存
      • (3)分析器
      • (4)优化器
      • (5)执行器
    • 存储引擎层
  • 一条更新语句如何执行
    • 两个日志模块redo log和 binlog
    • 更新语句执行流程
    • binlog和redo log两阶段提交
    • 持久化
  • 如何保证分布式服务器的数据一致性(以redis为例)
  • 数据库和Redis缓存一致性怎么做的
    • 1 先写缓存,再写数据库
    • 2 先写数据库,再写缓存
      • 2.1 写缓存失败了
      • 2.2 高并发下的问题
      • 2.3 浪费系统资源
    • 3 先删缓存,再写数据库
      • 3.1 高并发下的问题
      • 3.2 缓存双删
    • 4 先写数据库,再删缓存
    • 5. 删缓存失败怎么办?
  • SQL慢查询是什么,怎么解决?
      • 慢查询产生的原因
  • 如何发现慢查询的SQL
  • 慢查询解决思路
      • 注意与索引相关的规则:
      • 除了上述索引使用规则外,还需要特别注意以下几点:
  • 什么场景下使用redis,有哪些优势劣势
  • Redis和memcached区别
  • MySQL事务的四大特性说一下
  • MySQL事务隔离级别
  • MySQL里drop、delete、truncate的区别
  • 联合查询
  • SQL左连接查询
  • 数据库查询出来的数据怎么选取前10个数据
  • Redis缓存穿透、击穿、雪崩
  • Redis布隆过滤器是什么,布隆过滤器的概率怎么控制
  • Redis 的 key ,value对应的底层数据实现
  • where 和 having 的区别
  • Redis的持久化方式
  • Redis为什么快
  • 数据库去重的方法
  • Union和Union all区别
  • 数据库删除表格中的一列
  • 上线后数据量很大,数据库select存在性能问题,怎么解决和优化
  • Redis的大key问题怎么解决
  • 怎么找出redis里面所有的大key
  • 分布式Redis的热key问题怎么处理
  • 怎么避免服务器集群里面单点接收太多请求,而其他服务器却空闲的问题


MySQL索引

为了优化数据库查询,就要尽量减少磁盘的

你可能感兴趣的:(数据库)