MySQL军规适应的业务场景

  • 互联网前台业务
  • 数据量较大
  • 并发量较大

在适应业务场景之下,系统

  • 响应时间,吞吐量,扩展性优先
  • 数据库往往最容易成为系统瓶颈

解放数据库,降数据库磁盘IO,将数据库CPU成为架构设计的核心方向之一

如何降低数据库磁盘IO

  • 读多写少用缓存
  • 前台与后台分离架构
  • 最优质的SQL
  • 只让数据库做它擅长的事情:存储和索引,少干其它事情
  • 大对象,原则上不要存储在数据库里

如何降低数据库CPU计算

  • 数据库非必须的CPU计算,尽量挪到服务处去处理
  • 禁止使用外键约束,由服务保障完整性
  • 禁止使用存储过程,视图,触发器,event

如何降低磁盘IO+CPU计算

  • 尽量不使用join,如果要用,必须保证字符集属性类型与长度相同,并且要建立索引
  • 禁止负向查询,与%开头的模糊查询
  • 字段类型,与查询字段赋值类型必须相同
  • 禁止在列上进行函数或表达式计算
  • 字段必须定义为not null,并提供默认值
  • 联合索引,区分度最高的放在最左边
  • 联合索引,列个数不要超过5个

以上是MySQL军规的主要内容,还有部分知识点,没有列出来。这个是针对MySQL的军规,实际上在oracle、postgresql等关系型数据库中都有一定的通用性,所以记录下来。希望对看到的你有所帮助。

沈剑老师的MySQL军规相关推荐

  1. mysql 必知必会【沈剑——公众号架构师之路】

    大神地址:https://mp.weixin.qq.com/s/pWHCieOwAdCrz8cauduWlQ 学而思资料:https mysql数组库 第一章 数据库索引 1.1 数据库索引 1.2 ...

  2. 如果你学不好架构设计,那你一定没遇到沈剑!

    熟悉小灰的小伙伴都知道,小灰写公众号已经三年多了.三年前,小灰的公众号刚刚起步的时候,就在关注着一个IT领域的头部大号:架构师之路. 架构师之路-分享技术思路 架构师之路的作者是沈剑老师,这位大神不但 ...

  3. 跟沈剑学习如何带领技术团队作战

    [学习笔记]| 作者/Edison Zhou 这是恰童鞋骚年的第229篇原创文章 小编Edison在阿里云开发者社区上看到了58集团技术VP大佬沈剑关于如何带领技术团队作战的一个直播分享,因此在站地铁 ...

  4. 快狗打车CTO沈剑:低成本搞定分布式调用链追踪系统

    本文根据沈剑老师在[2020 Gdevops全球敏捷运维峰会]现场演讲内容整理而成. 讲师介绍 沈剑,到家集团技术VP&技术委员会主席,快狗打车CTO,互联网架构技术专家,"架构师之 ...

  5. 快狗打车CTO沈剑:如何利用计划管理提升团队效率和产能

    本文根据沈剑老师在[deeplus直播第237期]线上分享演讲内容整理而成.(文末有获取本期PPT&回放的方式,不要错过) 沈剑 快狗打车CTO 到家集团技术委员会主席,互联网架构技术专家: ...

  6. 专访58沈剑:除了架构,我还想认真谈谈管理

    2016年6月25-26日,第27届MPD技术管理工作坊将在深圳华侨城洲际酒店举行.本次工作坊,我们邀请了58到家技术总监沈剑老师,分享<技术团队的接手.搭建与发展实践 >, 讲述沈剑老师 ...

  7. 58到家数据库30条军规解读(58沈剑)

    58到家数据库30条军规解读(58沈剑) 2017年02月19日 21:30:56 阅读数:1463 军规适用场景:并发量大.数据量大的互联网业务 军规:介绍内容 解读:讲解原因,解读比军规更重要 一 ...

  8. MySql数据库-58沈剑 架构师之路

    最近在看 "58沈剑 架构师之路"的公众号,写的非常简练,干货很多.但里面也充斥了很多广告和管理类的文章,本文主要是对里面的数据库文章做一个汇总: InnoDB,5项最佳实践,知其 ...

  9. mysql双主架构沈剑_58 沈剑 - 数据库架构师做什么-58同城数据库架构设计思路

    1.数据库架构师做什么? 58同城数据库架构设计思路 技术中心-沈剑 shenjian@58.com 2.关亍我-@58沈剑 • 前百度高级工程师 • 58同城技术委员会主席,高级架构师 • 58同城 ...

最新文章

  1. 静态配置_【实验】华为静态路由基础配置
  2. MVC、JSP实现mysql的增删改查功能的封装和简陋的界面交互
  3. 网络推广离不开关键词的精准挖掘
  4. 重学java基础第二十四课:标识符合关键字
  5. pythondd_一些PYTHON :D:D:D
  6. DSB2017第一名论文理解: 3D Deep Leaky Noisy-or Network(一)
  7. 费尔德曼的百吉饼实验:人类的诚实程度其实超出你的想象!
  8. LoRa VS NB-IoT,一场物联网时代 C 位争夺战
  9. python简单选择排序_Python实现冒泡,插入,选择排序简单实例
  10. 分享21个精美的博客网站设计案例
  11. No module named MNIST_NBA十大面具侠:NO.1 竟然是他!
  12. Android通讯录查询篇--ContactsContract.Data 二
  13. M2Det 论文笔记
  14. python 删除字典数据,Python简单遍历字典及删除元素的方法
  15. 一、知识图谱商业应用
  16. 如何在EngineeringVillage(EI Compendex)检索中文期刊
  17. Centos7.9配置静态ip与动态ip
  18. 一根网线两台电脑传输文件
  19. Java-Aspose实现Word文字替换(本地储存或浏览器下载)
  20. 计算机屏幕的显示分辨率与什么有关,事实:显示器屏幕尺寸和分辨率之间是什么关系?...

热门文章

  1. 用Python画圣诞树
  2. 一个很好用的小程序生成二维码海报的组件库
  3. DirectShow之视频处理
  4. 新零售时代下,物流行业迎来新机遇
  5. P14 JScrollPane 滚动面板
  6. Android之View提升:四 使用ExpandableListView 折叠显示
  7. 一招解决A卡下载安卓模拟器问题
  8. Vue项目中用百度地图实现城市定位
  9. C语言——医院挂号系统(队列)
  10. Node.js 运行.js文件出现错误找不到文件的解决办法