• linkedu视频
  • 平面设计
  • 电脑入门
  • 操作系统
  • 办公应用
  • 电脑硬件
  • 动画设计
  • 3D设计
  • 网页设计
  • CAD设计
  • 影音处理
  • 数据库
  • 程序设计
  • 认证考试
  • 信息管理
  • 信息安全
菜单
linkedu.com
  • 网页制作
  • 数据库
  • 程序设计
  • 操作系统
  • CMS教程
  • 游戏攻略
  • 脚本语言
  • 平面设计
  • 软件教程
  • 网络安全
  • 电脑知识
  • 服务器
  • 视频教程
  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase
您的位置:首页 > 数据库 >Mysql > MySQL5.6的10053,CBO如何选择执行计划

MySQL5.6的10053,CBO如何选择执行计划

作者:关注系统性能调优 字体:[增加 减小] 来源:互联网 时间:2017-08-22

关注系统性能调优通过本文主要向大家介绍了mysql5.6,mysql5.6 64位下载,mysql5.6安装图解,mysql5.6安装教程,mysql5.6下载等相关知识,希望本文的分享对您有所帮助

 

mysql> select version();
+------------+
| version()  |
+------------+
| 5.6.24-log |
+------------+
1 row in set (0.00 sec)

mysql> create table a (c1 int);
Query OK, 0 rows affected (0.32 sec)
mysql> insert into a values(1);
Query OK, 1 row affected (0.01 sec)
mysql> insert into a values(2);
Query OK, 1 row affected (0.00 sec)
mysql> insert into a values(3);
Query OK, 1 row affected (0.00 sec)
mysql> insert into a values(4);
Query OK, 1 row affected (0.01 sec)
mysql> insert into a values(5);
Query OK, 1 row affected (0.00 sec)
mysql> insert into a values(6);
Query OK, 1 row affected (0.01 sec)

mysql> explain select * from a where c1=6;
+----+-------------+-------+------+---------------+------+---------+------+------+-------------+
| id | select_type | table | type | possible_keys | key  | key_len | ref  | rows | Extra       |
+----+-------------+-------+------+---------------+------+---------+------+------+-------------+
|  1 | SIMPLE      | a     | ALL  | NULL          | NULL | NULL    | NULL |    6 | Using where |
+----+-------------+-------+------+---------------+------+---------+------+------+-------------+
1 row in set (0.00 sec)

mysql> create index ind_a_c1 on a(c1);
Query OK, 0 rows affected (0.06 sec)
Records: 0  Duplicates: 0  Warnings: 0

mysql> explain select * from a where c1=6;
+----+-------------+-------+------+---------------+----------+---------+-------+------+-------------+
| id | select_type | table | type | possible_keys | key      | key_len | ref   | rows | Extra       |
+----+-------------+-------+------+---------------+----------+---------+-------+------+-------------+
|  1 | SIMPLE      | a     | ref  | ind_a_c1      | ind_a_c1 | 5       | const |    1 | Using index |
+----+-------------+-------+------+---------------+----------+---------+-------+------+-------------+

 

1 row in set (0.00 sec)

 

#开启trace
mysql> set optimizer_trace='enabled=on';
Query OK, 0 rows affected (0.00 sec)
#设置trace大小
mysql> set optimizer_trace_max_mem_size=1000000;
Query OK, 0 rows affected (0.00 sec)
#增加trace中注释
mysql> set end_markers_in_json=on;
Query OK, 0 rows affected (0.00 sec)

mysql> select * from a where c1=6;
+------+
| c1   |
+------+
|    6 |
+------+
1 row in set (0.00 sec)

mysql> select * from information_schema.optimizer_trace\G
*************************** 1. row ***************************
                            QUERY: select * from a where c1=6
                            TRACE: {
  "steps": [
    {
      "join_preparation": {#优化准备工作
        "select#": 1,
        "steps": [
          {
            "expanded_query": "/* select#1 */ select `a`.`c1` AS `c1` from `a` where (`a`.`c1` = 6)"
          }
        ] /* steps */
      } /* join_preparation */
    },
    {
      "join_optimization": {#优化的主要阶段,包括逻辑优化和物理优化两个阶段  
        "select#": 1,
        "steps": [
          {
            "condition_processing": {
              "condition": "WHERE",
              "original_condition": "(`a`.`c1` = 6)",
              "steps": [
                {
                  "transformation": "equality_propagation",  #逻辑优化,等式处理
                  "resulting_condition": "multiple equal(6, `a`.`c1`)"
                },
                {
                  "transformation": "constant_propagation",
                  "resulting_condition": "multiple equal(6, `a`.`c1`)"
                },
                {
                  "transformation": "trivial_condition_removal",
                  "resulting_condition": "multiple equal(6, `a`.`c1`)"
                }
              ] /* steps */
            } /* condition_processing */
          },
          {
            "table_dependencies": [#逻辑优化, 找出表之间的相互依赖关系. 非直接可用的优化方式
              {
                "table": "`a`",
                "row_may_be_null": false,
                "map_bit": 0,
                "depends_on_map_bits": [
                ] /* depends_on_map_bits */
              }
            ] /* table_dependencies */
          },
          {
            "ref_optimizer_key_uses": [ #逻辑优化,找出备选的索引
              {
                "table": "`a`",
                "field": "c1",
                "equals": "6",
                "null_rejecting": false
              }
            ] /* ref_optimizer_key_uses */
   

分享到:QQ空间新浪微博腾讯微博微信百度贴吧QQ好友复制网址打印

您可能想查找下面的文章:

  • MySQL 绿色版安装方法图文教程
  • 强制修改mysql的root密码的六种方法分享(mysql忘记密码)
  • MySQL易学易用之MYSQL不为人知的特性
  • mysql 数据库中my.ini的优化 2G内存针对站多 抗压型的设置
  • MySQL 相关的环境变量
  • 绿色版 mysql 安装配置
  • MySQL5.6的10053,CBO如何选择执行计划
  • Mysql开启GTID后遇到错误跳过方法
  • ubuntu下在docker中安装mysql5.6实例详解
  • MySQL5.6在Linux环境下的编译以及安装的图文教程

相关文章

  • 2018-12-05SQLServer 数据导入导出的几种方法小结
  • 2018-12-05Mysql5.7.17在Window下安装及设置编码为utf8的方法分享
  • 2017-05-11Mysql 的存储引擎,myisam和innodb的区别
  • 2017-05-11mysql 读写分离(基础篇)
  • 2018-12-05MySQL与Oracle 差异比较之一数据类型
  • 2018-12-05一道sql面试题附答案
  • 2018-12-05查看Oracle的执行计划一句话命令_Oracle应用_脚本之家
  • 2018-12-05SQL集合函数中case when then 使用技巧
  • 2018-12-05faisunSQL自动导入或备份MYSQL数据库程序(MySQL数据库备份,还原,
  • 2017-05-11mysql导出指定数据或部份数据的方法

文章分类

  • MsSql
  • Mysql
  • oracle
  • MariaDB
  • DB2
  • SQLite
  • PostgreSQL
  • MongoDB
  • Redis
  • Access
  • 数据库其它
  • sybase
  • HBase

最近更新的内容

    • 主流的NoSQL数据库--MongoDB权限设置的详解
    • mysql和oracle的group by的rollup和cube
    • Mysql中查询与删除重复行的一些复杂的sql语句
    • SQL SERVER 与ACCESS、EXCEL的数据转换方法分享
    • mysql创建触发器的详细过程
    • Oracle数据库安全策略分析(一)第1/2页
    • MYSQL5 masterslave数据同步配置方法第1/3页
    • Mysql GTID Mha配置方法的示例代码分享
    • 一个字段同时满足多个条件的查询
    • 对于mysql的query_cache认识的误区

关于我们 - 联系我们 - 免责声明 - 网站地图

©2020-2025 All Rights Reserved. linkedu.com 版权所有