zoukankan      html  css  js  c++  java
  • MySQL优化方案

    插入数据

    1.批量插入

    1).尽量使用多个值表的INSERT语句,这种方式将大大缩减客户端与数据库之间的连接、关闭等消耗
    insert into test values(1,2),(1,3),(1,4)…
    2).当从一个文本文件装载一个表时,使用LOAD DATA INFILE,这通常比使用很多 INSERT语句快20倍

    索引相关

    1.mysql索引分类
    主键索引:PRIMARY KEY
    唯一索引:索引列的所有值都只能出现一次,即必须唯一
    普通索引:最基本的索引类型,而且它没有唯一性之类的限制
    全文索引:全文索引的索引类型为FULLTEXT。全文索引可以在VARCHAR或者TEXT类型的列上创建

    2.mysql查看表索引
    show index from table_name;

    3.sql中使用了聚合函数,唯一过滤字段name已建索引,并且聚合函数中字段是主键或该索引字段,虽然name是不等于表达式,仍然可以走索引(“覆盖索引”,不需要查表)
    select sum(id)或sum(name) from t_address where name <> 'aaa';

    4.对于含有OR的查询语句,如果要利用索引,则OR之间的每个条件列都必须用到索引,例如:
    select * from table_name where col01='aa' or col02='bb';
    字段col01和col02分别有单列索引时,现MySQL在处理含有OR字句的查询时,实际是对OR的各个字段分别查询后的结果进行了UNION
    但如果col01和col02是放在一个联合索引中,则MySQL不会使用到该索引

  • 相关阅读:
    Hibernate缓存之初探
    Oracle、MySql、SQLServer 数据分页查询
    LISTAGG WITHIN GROUP函数使用方法
    exp/imp密码特殊字符处理
    Oracle动态授权用户权限
    Centos7二进制安装Mysql8.0.14
    Zabbix监控Windows网卡流量
    Zabbix监控通过jvm插件监控Tomcat
    Linux安装RabbitMQ3.73开启插件shovel并做配置
    yum安装指定路径和配置文件出错
  • 原文地址:https://www.cnblogs.com/atai/p/9782269.html
Copyright © 2011-2022 走看看