zoukankan      html  css  js  c++  java
  • 全面优化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
    崩溃后安全恢复 支持 不支持





  • 相关阅读:
    ABP框架系列之三十六:(MVC-Views-MVC视图)
    ABP框架系列之三十五:(MVC-Controllers-MVC控制器)
    ABP框架系列之三十四:(Multi-Tenancy-多租户)
    ABP框架系列之三十三:(Module-System-模块系统)
    2-kong的preserve_host和strip_uri解析
    2-Consul简介
    1-Consul系列文章
    1-Kong文章记录
    1-ES学些教程
    0-Jenkins系列学习文章
  • 原文地址:https://www.cnblogs.com/sweetXiaoma/p/11941620.html
Copyright © 2011-2022 走看看