全面优化MySQL(一)

mysql执行一条查询语句的内部执行过程

  1. 权限验证 客户端通过连接器连接到 MYSQL服务器.
  2. 查询缓存 查询是否有查询缓存, 如果有缓存(之前执行过此语句),则直接返回缓存数据.
  3. 语法检查 分析器会对查询语句进行语法分析和词法分析, 判断 SQL 语法是否正确, 如果查询语法错误会直接返回给客户端错误信息, 如果语法正确会进入优化器.
  4. 语句优化 优化器对查询语句进行优化处理, 例如表有多个索引, 优化器会判别哪个索引的性能更好.
  5. 查询比对 执行器开始执行语句进行查询比对, 知道查询到满足条件的所有数据, 然后进行返回.

查询缓存的优缺点

  • 优点:效率高
  • 缺点: 任何更新表操作都会清空查询缓存,导致查询缓存非常容易失效.

查询缓存的设置
%query_cache_% 按需调整.
MySQL8.0.0后删除了查询缓存的功能


MySQL的常用引擎有哪些?
MySQL的常用引擎有 InnoDB, MyISAM, Memory等, 从 MySQL5.5.5版本之后 InnoDB 就成为了默认的存储引擎.


针对表级别的数据库引擎设置.
在创建时可以设置此表的存储引擎.
完整代码如下:

create table student(
	id int primary key auto_increment,
	account varchar(120),
	age int
) ENGINE=MyISAM -- 指定对应引擎

存储引擎对比 InnoDB 和 MyISAM

a InnoDB MyISAM
崩溃后安全恢复 支持 不支持





原文地址:https://www.cnblogs.com/sweetXiaoma/p/11941620.html