04--奠定MYSQL江湖地位的开发注意要点
为不同的行业提供不同的MYSQL应用场景
吴炳锡老师谈到,不同行业的业务有不同的特点,选择好一个适合自己行业的MYSQL应用场景至关重要。
- 互联网行业
速度一直都是互联网发展的第一要义,互联网行业所使用的数据库特点简要概括就是一个字:快!响应速度快,性能高。
- 金融行业
金融行业更加注重数据的稳定和安全,对于一致性的要求是众多行业中最高的。选择集群,数据库配置里的安全选项以及对事物的控制上都与其他行业有很大区别。
- 传统行业
相比较速度和安全,传统企业更加注重业务的处理,业务完成的整体地位要高于性能。
为不同的企业选择不同的存储引擎
和应用场景相类似,存储引擎也应该按照行业的特点来进行选择。吴炳锡老师就常用的MYSQL存储引擎进行了分析。
- MyISAM
MyISAM是最传统的MYSQL存储引擎,但从MySQL5.5版本以后,官方就开始不进行特别维护了,这个引擎现在基本上已经可以作废了。吴炳锡老师强烈建议还在使用这款存储引擎的同志们尽快弃暗投明,选择新的存储引擎来替代它。
- Innodb
Innodb是现在比较新的引擎,也是吴炳锡老师重点推荐的一款存储引擎。Innodb有两个不同的版本,一个是Innobase,一个是Innodb Plugin。现在用的MYSQL5.5和5.6两个版本的都是基于Innodb Plugin的,性能较之从前提高了两倍以上,是做常规业务的不二之选。
- 其他
另外还有可以提供高速写入功能的TokuDB引擎,在数据库里面做繁杂统计分析工作的Inforbright引擎等等众多存储引擎可供我们选择。
MYSQL优化的“三减一加”

用户集中访问算得上是互联网领域的“高发病”,面对高并发环境,吴炳锡老师提出了:三减一加的政策。减少数据访问、减少网络传输、减少CPU开销和增加资源。
高效索引设计的“军规”

设计高效索引
- 查询,更新,删除where条件中必须有索引,处理行数不能超过1w
- 若查询条件中不包含索引的最左列, 无法使用索引
- 对于范围查询, 只能利用索引的最左列
- 对于order by A语句,在A上建立索引, 可以避免排序
- 对于group by A语句,在A上建立索引, 可以避免排序
- 对于多列排序, 需要所有所有列排序方向一致, 才能利用索引。
04--奠定MYSQL江湖地位的开发注意要点的更多相关文章
- Ubuntu14.04 Django Mysql安装部署全过程
Ubuntu14.04 Django Mysql安装部署全过程 一.简要步骤.(阿里云Ubuntu14.04) Python安装 Django Mysql的安装与配置 记录一下我的部署过程,也方便 ...
- Ubuntu 16.04 安装mysql并设置远程访问
说明: 一个朋友在使用ubuntu-server 16.04安装mysql,设置远程访问的时候出现了问题,请我帮忙.但是,我也没有使用过ubuntu安装mysql,于是乎搜索了很多技术文件,比着葫芦画 ...
- Ubuntu 12.04 安装MySQL
本文地址:http://www.cnblogs.com/yhLinux/p/4012689.html 本文适合新手入门. 本文是对 Ubuntu 12.04 环境下安装 MySQL 的记录,通过这两天 ...
- Ubuntu 15.04下MySQL 5.6.25不支持中文解决办法
Ubuntu 15.04下MySQL 5.6.25不支持中文解决办法,apt-get install 安装的,不是源码包安装的mysql. 1 修改mysql的配置文件 /etc/mysql/conf ...
- Cacti 是一套基于PHP,MySQL,SNMP及RRDTool开发的网络流量监测图形分析工具
Cacti 是一套基于PHP,MySQL,SNMP及RRDTool开发的网络流量监测图形分析工具. mysqlreport是mysql性能监测时最常用的工具,对了解mysql运行状态和配置调整都有很大 ...
- Ubuntu 16.04 安装Mysql 5.7 踩坑小记
title:Ubuntu 16.04 安装Mysql 5.7 踩坑小记 date: 2018.02.03 安装mysql sudo apt-get install mysql-server mysql ...
- ubuntu 16.04上 mysql 5.7 安装笔记
一 安装 ubuntu 采用APT安装方式,可参考: Ubuntu 安装mysql和简单操作 Ubuntu 16.04安装MySQL(5.7.18) A Quick Guide to Using th ...
- Ubuntu 18.04 安装MySQL
最近在写东西的时候,需要用到MySQL,在网上查了一下,都说Ubuntu18.04不能安装MySQL5.7.22, 总觉的不可能,所以自己就研究了一下,然后分享给大家 工具/原料 VMware W ...
- MySQL学习笔记(一)Ubuntu16.04中MySQL安装配置(5.6优化、错误日志、DNS解决)
目录 第一部分.5.6安装.配置.自动备份 第二部分.5.7源码安装.配置.自动备份 第一部分.5.6安装 1.安装mysql sudo apt-get install mysql-server su ...
随机推荐
- [CodeForces]1059C Sequence Transformation
构造题. 我递归构造的,发现如果N>3的话就优先删奇数,然后就把删完的提取一个公约数2,再重复操作即可. 具体原因我觉得是因为对于一个长度大于3的序列,2的倍数总是最多,要令字典序最大,所以就把 ...
- [Cerc2007]robotic sort
splay区间反转练手题 #include <iostream> #include <cstdio> #include <algorithm> using name ...
- firebird的递归查询
with RECURSIVE cte as ( select a.* from PM_PROJECT a where a.pm_id='root_id' union all select k.* fr ...
- poj 3006水题打素数表
#include<stdio.h> #include<string.h> #define N 1100000 int isprim[N],prime[N]; void ispr ...
- C#--excel操作控件--interop是什么
这个是微软出的操作excel的类库,为什么这个比NPOI的下载量少这么多?
- Spring MVC-概述(转载实践)
以下内容翻译自:https://www.tutorialspoint.com/springmvc/springmvc_overview.htm 说明:示例基于Spring MVC 4.1.6. Spr ...
- [CSS3] :empty Selector
When the element has empty content, you might want to display some text to idicate the compoent is l ...
- _DataStructure_C_Impl:基数排序
#include<stdio.h> #include<stdlib.h> #include<math.h> #include<string.h> #de ...
- 什么是Spark?
什么是Spark Spark是一个基于内存计算的开源的集群计算系统,目的是让数据分析更加高速.Spark很小巧玲珑,由加州伯克利大学AMP实验室的Matei为主的小团队所开发. 使用的语言是Scala ...
- UVA11234 Expressions
题目的意思实在是读不懂,又是把栈变成队列什么的.. 只是大体的意思就是把后缀表达式变一下.. 抛开意思,事实上就是依据输入建个树,然后倒序输出.. 拿第一个例子说明:大写代表操作符(+ - × /之类 ...