• MySQL知识


    MySQL四层分层:(自上往下执行)
    连接层:提供预客户端连接的服务。
    服务层: 1.提供各种用户使用的接口 
                   2.提供各种sql优化器(mysql如果发现你自己的sql写的太烂,会自动帮你优化)
    引擎层:  INNODB:事务优先   ( 适合高并发操作,使用的是行锁)
                     MYISAM:  性能有限    (使用的是表锁)
    存储层:  存储数据   
     
    查询数据库的引擎:                       SHOW VARIABLES LIKE '%storage_engine%'
    查询数据库支持的引擎 :                 SHOW engines
     
     
    为什么要SQL优化原因:
    性能低,执行事件太长,等待时间太长,sql语句欠佳(连接查询),索引失效,服务器参数设置不合理
    一般SQL编写过程
                  select  ... distinct  ...  from  ...  join  on  ...  where   ...  group by  ... having  ...  order
     
    SQL的解析过程
                 from  ...  on  ...  join   ...  where ...  group by  ...  having   ...   select  ...  distinct  ...  order
     
    sql如何进行优化,主要是索引的 优化
            索引:  相当于书的目录(排好序,加快速度)
            索引:  index是帮助mysql高效获取数据的数据结构。索引是数据结构(b+)
     
            索引的弊端:
                    1.索引本身很大,可以存放内存/硬盘
                    2.索引不是所有情况都使用       (少量数据,频繁更新的字段,很少使用的字段,一般不使用索引)
                    3.索引会降低增删改的效率
     
     
    索引分类:
                1.主键索引:不能重复,id    不能为null
                2.唯一索引:不能重复,id    可以是null
                3.单键索引 ,age  :一个表可以多个单键索引
                4.复合索引:多个列构成的索引(相当于  二级目录:)不一定要两个都要命中
     
    创建索引
                1.单键索引       create index bobo on emp(name)
                2.唯一索引       create unique index bobo on emp(name)
                3.复合索引       create index bobo on emp(name,age)
     
    修改索引
                a。单键索引       alter table emp add index bobo(name)
                b。唯一索引       alter table emp add unique index bobo(name)
                c。复合索引       alter table emp add  index bobo(name,age)
     
    删除索引:
                drop index bobo on emp
     
    查询索引:
                show index from emp
    事务只对DML有效,对DDL无效,故删除索引无需commit
     
     
    SQL性能问题
            1.分析SQL的执行计划    explain可以模拟sql执行优化器,从而让开发人员可以知道自己编写sql的状况
            2.MYSQL查询优化会干扰我们的优化
     
     
     
  • 相关阅读:
    腾讯云ubuntu安装Mysql并配置远程访问
    腾讯云ubuntu搭建tomcat
    腾讯云ubuntu搭建jdk
    说说建站那些事
    网络爬虫:分离生产者和消费者来优化爬虫程序
    spring mvc 图片上传,图片压缩、跨域解决、 按天生成文件夹 ,删除,限制为图片代码等相关配置
    UIkit – 轻量级前端框架
    【Spark】RDD操作具体解释3——键值型Transformation算子
    java线程具体解释
    HDU 5402 Travelling Salesman Problem(棋盘染色 构造 多校啊)
  • 原文地址:https://www.cnblogs.com/Jemb/p/11577559.html
Copyright © 2020-2023  润新知