9月17-MySQL性能优化

MySQL性能优化策略

1、MySQL内核架构

2、索引原理与查询优化

  • 加速MySQL高效查询数据的数据结构
  • 二分查找(binary search)
  • 二叉树查找(binary tree search)
  • MyISAM引擎和InnoDB使用Balance+Tree作为索引结构

3、内存引擎类型

  • MyIsam速度快,响应快。表级锁是致命问题
  • Innodb目前主流存储引擎 1)行级锁 务必注意影响结果集的定义是什么 行级锁会带来更新的额外开销,但是通常情况下是值得的 2)事物提交 对I/O效率提升的考虑 对安全性的考虑
  • HEAP内存引擎 1)频繁更新和海量读取情况下仍会存在锁定状况
  • 索引优化-MyISAM VS InnoDB MyISAM索引文件(.MYI)、数据文件(MYD) 1)所有的索引都是对等的 2)KEY

4、内存使用考量

5、分布式缓存Cache

  • Redis、Memcached是最流行的分布式缓存
  • MySQL支持缓存同步数据 1)命中率是第一要评估的数据 2)善于利用内存,请注意数据存储的格式及压缩算法 3)相关评估类似于热点数据表的介绍,热点数据,静态不变

6、性能与安全性

7、分布式架构

8、主从复制、读写分离

  • 主从复制 1)读写分离对负载的减轻远远不如分库分表来的直接 2)写压力会传递给从表,只读从库一样有写压力,一样会产生读写锁 3)负载均衡主要使用分库方案,主从主要用于热备和故障转移
  • MySQL Cluster:高可用 1)同步复制 2)自动故障切换 3)自我修复 4)无共享架构,无单点故障 5)跨地域复制

9、分库分表、分片Sharding策略

  • 分片Sharding策略,MySQL集群与Sharding存储机制 1)自动将表分片(或分区)到不同节点上,使数据库可以在低成本的商用硬件上横向扩展,支持读写和写入密集型负载,并且可通过sql或者直接通过NoSQL API访问。 2)分片对应用程序完全透明,这样应用程序便可连接至集群中任何节点,查询操作会自动访问所需的正确片区。

10、硬件策略

  • 高并发,高可用
  • 增加磁盘并发IO数量
  • 使用SSD磁盘
  • 日志文件独立磁盘驱动器
  • 使用RAID磁盘阵列
  • 使用多核CPU
  • 使用大量内存和缓存

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • MyBatis中Like语句使用方式(模糊查询)

    麦克劳林
  • CentOS7安装OracleJDK和JRE

    JDK(Java Development Kit)指的是Java开发工具集。JDK是整个Java的核心,包括了Java基础类库、Java运行环境(JRE)和Ja...

    麦克劳林
  • js校验表单后提交表单的三种方法总结

    本篇文章主要是对js校验表单后提交表单的三种方法进行了总结介绍,需要的朋友可以过来参考下,希望对大家有所帮助。

    麦克劳林
  • mongoDB开启分片操作

    执行 db.runCommand( { enablesharding : "xx库" } );或 sh.enableSharding()这一步是对数据库启用分片...

    拓荒者
  • Java程序员必备:常见OOM异常分析

    放假这几天,温习了深入理解Java虚拟机的第二章, 整理了JVM发生OOM异常的几种情况,并分析原因以及解决方案,希望对大家有帮助。

    捡田螺的小男孩
  • 源码分析ElasticJob事件监听器

    上述回调函数是分片级的,也就是说默认情况下,同一个任务的多个分片都会执行beforeJobExecuted、afterJobExe-cuted方法,如果某些情况...

    丁威
  • 解析 Elasticsearch 棘手问题,集群的 RED 与 YELLOW

    结果显示分片大都是因为 node_left 导致未分配,然后通过 explain API 查看分片 myindex[3] 不自动分配的具体原因:

    用户1737318
  • 大数据的搜索引擎——Elasticsearch

    结果显示分片大都是因为 node_left 导致未分配,然后通过 explain API 查看分片 myindex[3] 不自动分配的具体原因:

    CSDN技术头条
  • 国家网络安全宣传周,鹅厂风采轻松览

    腾讯云安全
  • 宜信开源|关系型数据库全表扫描分片详解

    导读:数据总线(DBus)专注于数据的实时采集与实时分发,可以对IT系统在业务流程中产生的数据进行汇聚,经过转换处理后成为统一JSON的数据格式(UMS),提供...

    宜信技术学院

扫码关注云+社区

领取腾讯云代金券