欢迎光临我的博客!
如果发现文章有错误,欢迎指正!
邮箱: l2545721422@163.com
👉 重要程度:⭐⭐⭐⭐⭐
💡 提示:SQL 优化涵盖的内容非常多,像正确使用索引、数据结构、数据库函数等等都属于 SQL 优化的范畴。另外,问到 SQL 优化的时候一定离不开 Explain 命令的使用!你可以参考下面这两篇文章来准备这个问题:
👉 重要程度:⭐⭐⭐
MySQL 中常见的日志类型主要有下面几类(针对的是 InnoDB 存储引擎):
●错误日志(error log) :对 MySQL 的启动、运行、关闭过程进行了记录。 ●二进制日志(binary log,binlog) :主要记录的是更改数据库数据的 SQL 语句。 ●一般查询日志(general query log) :已建立连接的客户端发送给 MySQL 服务器的所有 SQL 记录,因为 SQL 的量比较大,默认是不开启的,也不建议开启。 ●慢查询日志(slow query log) :执行时间超过 long_query_time秒钟的查询,解决 SQL 慢查询问题的时候会用到。 ●事务日志(redo log 和 undo log) :redo log 是重做日志,undo log 是回滚日志。 ●中继日志(relay log) :relay log 是复制过程中产生的日志,很多方面都跟 binary log 差不多。不过,relay log 针对的是主从复制中的从库。 ●DDL 日志(metadata log) :DDL 语句执行的元数据操作。
👉 重要程度:⭐⭐⭐
索引是一种用于快速查询和检索数据的数据结构,其本质可以看成是一种排序好的数据结构。
索引的作用就相当于书的目录。打个比方:我们在查字典的时候,如果没有目录,那我们就只能一页一页地去找我们需要查的那个字,速度很慢;如果有目录了,我们只需要先去目录里查找字的位置,然后直接翻到那一页就行了。
索引底层数据结构存在很多种类型,常见的索引结构有:B 树、 B+ 树 和 Hash、红黑树。在 MySQL 中,无论是 Innodb 还是 MyISAM,都使用了 B+ 树作为索引结构。