zoukankan      html  css  js  c++  java
  • mysql(四)海量数据优化

    索引

    MySQL 索引的建立对于 MySQL 的高效运行是很重要的,索引可以大大提高 MySQL 的检索速度。 如果没有索引,执行查询时候必须从第一条记录开始,扫描整个表的记录,直到符合要求的记录。如 果有了索引,mysql 无需扫描任何记录即可顺序找到目标记录的位置。简单说来, 索引就是提高查 找数据速度,数据量越多,效果越明显。

    • Mysql 中常见的索引类型有普通索引、唯一索引、全文索引、空间索引Spatial
    • 全文索引、空间索引Spatial 不常用
    • 1、索引可以让我们的查询速度变的非常快
    • 2、索引也会导致增加、修改数据的时候要比以前稍微慢一点,因为增加修改数据还要维护索引。
    设置数据,将users中的数据再添加到 users中;执行一次数据增加一倍;
    INSERT INTO users (`username`) SELECT username from users;
    
    
    1、创建普通索引
        索引名称 indexName  给 mytable表中的 username 设置为索引;
        基本语法:CREATE INDEX indexName ON mytable(username);
        create index index_name on class(name);
    
    2、查看索引
        基本语法: show index from table_name;
        show index from table_name G   // G 表示格式化输出;
    
    3、删除索引
    drop index index_name on tableName;
    
    4、创建唯一索引(主键是一种唯一索引)
    create unique index index_name on class(name)
    
    另一种方式 设置索引
    class 为表名,index_name为索引名称,name 为给那个字段添加索引;
    alter table employees add index lastnnn(last_name);
    alter table class add index index_name(name);  // 增加普通索引;
    alter table class add unique index_name(name); // 增加唯一索引;
    alter table class drop index index_name;       // 删除索引;
    
    

    在navicat 中设置为索引;

    在表名上右键,====> 设计表 ====> 选择 索引拦 索引类型选择 Normal;

  • 相关阅读:
    同步、异步 与 阻塞、非阻塞
    【转】综合对比 Kafka、RabbitMQ、RocketMQ、ActiveMQ 四个分布式消息队列
    Kafka总结笔记
    SpringBoot笔记
    过滤器(Filter)和拦截器(Interceptor)的执行顺序和区别
    Java Lambda表达式
    腾讯云博客同步声明(非技术文)
    SpringBoot学习笔记(十七:异步调用)
    设计模式—— 十七:装饰器模式
    Java初级开发0608面试
  • 原文地址:https://www.cnblogs.com/kgwei520blog/p/13783006.html
Copyright © 2011-2022 走看看