美文网首页MySQLjava自选集
吊打MySQL:21性能优化实践+学习导图+55面试+笔记+20

吊打MySQL:21性能优化实践+学习导图+55面试+笔记+20

作者: 让我来搞这个bug | 来源:发表于2022-07-31 13:08 被阅读0次

    面试又被MySQL虐?是不是很扎心呢?(呜呜呜~)好吧,话不多说,直接进入主题,分享一波我整理的干货,让你面试不再被虐,一起吊打MySQL!

    image.png

    MySQL学习思维导图

    01 55道复习必备题+解析

    • 一张表,里面有 ID 自增主键,当 insert 了 17 条记录之后,删除了第 15,16,17 条记录,再把 Mysql 重启,再 insert 一条记录,这条记录的 ID 是 18 还是 15 ?
    • Mysql 的技术特点是什么?
    • Heap 表是什么?
    • Mysql 服务器默认端口是什么?
    • 与 Oracle 相比,Mysql 有什么优势?
    • 如何区分 FLOAT 和 DOUBLE?
    • 区分 CHAR_LENGTH 和 LENGTH?
    • 请简洁描述 Mysql 中 InnoDB 支持的四种事务隔离级别名称,以及逐级之间的区别?
    • 在 Mysql 中 ENUM 的用法是什么?
    • 如何定义 REGEXP?
    • CHAR 和 VARCHAR 的区别?
    • 列的字符串类型可以是什么?
    • 如何获取当前的 Mysql 版本?
    • Mysql 中使用什么存储引擎?
    • Mysql 驱动程序是什么?
    • TIMESTAMP 在 UPDATE CURRENT_TIMESTAMP 数据类型上做什么?
    • 主键和候选键有什么区别?
    • 如何使用 Unix shell 登录 Mysql?
    • myisamchk 是用来做什么的?
    • MYSQL 数据库服务器性能分析的方法命令有哪些?
    • 如何控制 HEAP 表的最大尺寸?
    • MyISAM Static 和 MyISAM Dynamic 有什么区别?
    • federated 表是什么?
    • 如果一个表有一列定义为 TIMESTAMP,将发生什么?
    • 列设置为 AUTO INCREMENT 时,如果在表中达到最大值,会发生什么情况?
    • 怎样才能找出最后一次插入时分配了哪个自动增量?
    • 你怎么看到为表格定义的所有索引?
    • LIKE 声明中的%和_是什么意思?
    • 如何在 Unix 和 Mysql 时间戳之间进行转换?
    • 列对比运算符是什么?
    • 我们如何得到受查询影响的行数?
    • Mysql 查询是否区分大小写?
    • LIKE 和 REGEXP 操作有什么区别?
    • BLOB 和 TEXT 有什么区别?
    • mysql_fetch_array 和 mysql_fetch_object 的区别是什么?
    • 我们如何在 mysql 中运行批处理模式?
    • MyISAM 表格将在哪里存储,并且还提供其存储格式?
    • Mysql 中有哪些不同的表格?
    • ISAM 是什么?
    • InnoDB 是什么?
    • Mysql 如何优化 DISTINCT?
    • 如何输入字符为十六进制数字?
    • 如何显示前 50 行?
    • 可以使用多少列创建索引?
    • NOW()和 CURRENT_DATE()有什么区别?
    • 什么样的对象可以使用 CREATE 语句创建?
    • Mysql 表中允许有多少个 TRIGGERS?
    • 什么是非标准字符串类型?
    • 什么是通用 SQL 函数?
    • 解释访问控制列表
    • MYSQL 支持事务吗?
    • mysql 里记录货币用什么字段类型好
    • MYSQL 数据表在什么情况下容易损坏?
    • mysql 有关权限的表都有哪几个?
    • Mysql 中有哪几种锁?
    image.png

    55道复习必备题+解析

    02 20个高频知识点

    • 事务四大特性(ACID)原子性、一致性、隔离性、持久性?* 事务的并发?事务隔离级别,每个级别会引发什么问题,MySQL默认是哪个级别?* MySQL常见的三种存储引擎(InnoDB、MyISAM、MEMORY)的区别?* MySQL的MyISAM与InnoDB两种存储引擎在,事务、锁级别,各自的适用场景?* 查询语句不同元素(where、jion、limit、group by、having等等)执行先后顺序?* 什么是临时表,临时表什么时候删除?* MySQL B+Tree索引和Hash索引的区别?* sql查询语句确定创建哪种类型的索引?如何优化查询?* 聚集索引和非聚集索引区别?* 有哪些锁(乐观锁悲观锁),select 时怎么加排它锁?* 非关系型数据库和关系型数据库区别,优势比较?* 数据库三范式,根据某个场景设计数据表?* 数据库的读写分离、主从复制,主从复制分析的 7 个问题?* 使用explain优化sql和索引?* MySQL慢查询怎么解决?* 什么是 内连接、外连接、交叉连接、笛卡尔积等?* mysql都有什么锁,死锁判定原理和具体场景,死锁怎么解决?* varchar和char的使用场景?* mysql 高并发环境解决方案?* 数据库崩溃时事务的恢复机制(REDO日志和UNDO日志)?
    image.png

    20个MysSQL高频知识点

    03 21个性能优化最佳实践

    • 为查询缓存优化你的查询
    • EXPLAIN你的SELECT查询
    • 当只要一行数据时使用LIMIT 1
    • 为搜索字段建索引
    • 在Join表的时候使用相当类型的例,并将其索引
    • 千万不要 ORDER BY RAND()
    • 避免 SELECT *
    • 永远为每张表设置一个 ID
    • 使用 ENUM 而不是 VARCHAR
    • 从 PROCEDURE ANALYSE() 取得建议
    • 尽可能的使用 NOT NULL
    • Prepared Statements
    • 无缓冲的查询
    • 把 IP 地址存成 UNSIGNED INT
    • 固定长度的表会更快
    • 垂直分割
    • 拆分大的 DELETE 或 INSERT 语句
    • 越小的列会越快
    • 选择正确的存储引擎
    • 使用一个对象关系映射器(Object Relational Mapper)
    • 小心“永久链接”
    image.png

    21个性能优化最佳实践

    04 MySQL技术内幕 InnoDB存储MySQL技术内幕 InnoDB存储引擎引擎

    image.png

    MySQL技术内幕 InnoDB存储引擎

    *有需要小编在文章分享的这些MySQL资料的朋友,+v信:mxx2020666
    

    Spring全家桶笔记:Spring+Spring Boot+Spring Cloud+Spring MVC

    [图片上传中...(image.png-ec281d-1659244051377-0)]

    Spring全家桶笔记

    相关文章

      网友评论

        本文标题:吊打MySQL:21性能优化实践+学习导图+55面试+笔记+20

        本文链接:https://www.haomeiwen.com/subject/zhykwrtx.html