高并发大流量专题---10、MySQL数据库层的优化
高并发大流量专题---10、MySQL数据库层的优化
一、总结
一句话总结:
mysql先考虑做分布式缓存,过了缓存后就做mysql数据库层面的优化
1、mysql数据库层的优化的前面一层是什么?
数据库缓存:突破了数据库缓存就需要做mysql数据库层的优化
2、mysql优化方向?
数据表数据类型优化;索引优化;SQL语句的优化
存储引擎的优化
数据表结构设计的优化
数据库服务器架构的优化
3、mysql数据表的数据类型优化考虑?
合适:字段使用什么样的数据类型更合适
更快:字段使用什么样的数据类型性能更快
4、使用char还是varchar需要考虑什么?
存储字符串长度是否固定
5、使用tinyint、smallint、bigint需要考虑什么?
空间:考虑空间的问题
范围:考虑范围的问题
6、IP地址的如何存储?
可以使用整型存储IP地址:php应该有将ip转成整型的方法
7、mysql索引如何优化?
建立合适的索引
思考索引在什么场景下效率最高
8、mysql索引的创建原则?
索引不是越多越好,在合适的字段上创建合适的索引
复合索引的前缀原则
9、mysql索引的注意事项?
1、复合索引的前缀原则
2、like查询%的问题
3、or条件索引使用情况
4、字符串类型索引失效的问题:如果里面是整形,不要引号索引失效
复合索引的前缀原则
like查询%的问题
全表扫描优化
or条件索引使用情况
字符串类型索引失效的问题:如果里面是整形,不要引号索引失效
10、SQL语句如何优化?
优化查询过程中的数据访问
优化长难句的查询语句
优化特定类型的查询语句
11、优化查询过程中的数据访问 需要注意什么?
使用Limit
返回列不用*
12、如何优化长难句的查询语句?
变复杂为简单
切分查询
分解关联查询:有利于做数据层面的缓存
13、如何优化特定类型的查询语句?
优化count()
优化关联查询;优化子查询
优化Group by和distinct;优化limit和union
14、mysql数据库存储引擎如何优化?
尽量使用InnoDB存储引擎:是行锁不是表锁
15、数据表结构设计如何优化?
分区操作:通过特定的策略对数据表进行物理拆分:比如地域
分库分表:比如经常在线的和经常不在线的分开
16、分区操作的特点?
通过特定的策略对数据表进行物理拆分:比如地域
对用户透明
partition by
17、分库分表的方式有哪些?
水平拆分:拆行:比如经常在线的和经常不在线的分开
垂直拆分:拆列
18、数据库服务器架构如何优化?
主从复制
读写分离
双主热备
负载均衡
19、mysql数据库中的主从复制、读写分离、双主热备 如何实现?
使用mysql的vlog日志、中心日志,通过主库和从库的vlog来回的交换,事件来回的传送,即可实现
20、MySQL的负载均衡 如何实现?
通过LVS的三种基本模式实现负载均衡
MyCat数据库中间件实现负载均衡
二、内容在总结中
高并发大流量专题---10、MySQL数据库层的优化的更多相关文章
- 高并发大流量专题---3、前端优化(减少HTTP请求次数)
高并发大流量专题---3.前端优化(减少HTTP请求次数) 一.总结 一句话总结: 图片地图:使用<map><area></area></map>标签. ...
- 高并发大流量专题---11、Web服务器的负载均衡
高并发大流量专题---11.Web服务器的负载均衡 一.总结 一句话总结: 推荐使用nginx七层(应用层)负载均衡的实现:配置那是相当的简单 http{ upstream cluster{ serv ...
- 高并发大流量专题---5、CDN加速
高并发大流量专题---5.CDN加速 一.总结 一句话总结: CDN就是多整几台节点服务器,选距离用户最近的服务器来给用户服务,实现的话可以用阿里云.腾讯云他们提供的功能,简单方便,妈妈再也不用担心我 ...
- nodejs高并发大流量的设计实现,控制并发的三种方法
nodejs高并发大流量的设计实现,控制并发的三种方法eventproxy.async.mapLimit.async.queue控制并发Node.js是建立在Google V8 JavaScript引 ...
- 一文总结高并发大数据量下MySQL开发规范【军规】
在互联网公司中,MySQL是使用最多的数据库,那么在并发量大.数据量大的互联网业务中,如果高效的使用MySQL才能保证服务的稳定呢?根据本人多年运维管理经验的总结,梳理了一些核心的开发规范,希望能给大 ...
- php解决与处理网站高并发 大流量访问的方法
方法/步骤 首先,确认服务器硬件是否足够支持当前的流量 普通的P4服务器一般最多能支持每天10万独立IP,如果访问量比这个还要大, 那么必须首先配置一台更高性能的专用服务器才能解决问题 ,否则怎么 ...
- 大并发大数量中的MYSQL瓶颈与NOSQL介绍
NoSQL在2010年风生水起,大大小小的Web站点在追求高性能高可靠性方面,不由自主都选择了NoSQL技术作为优先考虑的方面.今年伊始,InfoQ中文站有幸邀请到凤凰网的孙立先生,为大家分享他之于N ...
- [原创]lvs+ospf+nginx实现高可用大流量web架构
lvs+ospf+nginx实现高可用大流量web架构配置总概述 架构图: 配置如下: .quagga之zebra配置: # cat /etc/quagga/zebra.conf ! ! Zebra ...
- MySQL性能调优与架构设计——第8章 MySQL数据库Query的优化
第8章 MySQL数据库Query的优化 前言: 在之前“影响 MySQL 应用系统性能的相关因素”一章中我们就已经分析过了Query语句对数据库性能的影响非常大,所以本章将专门针对 MySQL 的 ...
随机推荐
- 【FICO系列】SAP FICO模块-固定资产月结的注意点
公众号:SAP Technical 本文作者:matinal 原文出处:http://www.cnblogs.com/SAPmatinal/ 原文链接:[FICO系列]SAP FICO模块-固定资产月 ...
- 【春训团队赛第四场】补题 | MST上倍增 | LCA | DAG上最长路 | 思维 | 素数筛 | 找规律 | 计几 | 背包 | 并查集
春训团队赛第四场 ID A B C D E F G H I J K L M AC O O O O O O O O O 补题 ? ? O O 传送门 题目链接(CF Gym102021) 题解链接(pd ...
- struts框架的一些注意点
1.Struts.xml文件中<include file="">标签的运用 用法:此标签引用配置文件,Struts2提供了一个默认的struts.xml文件,当此配置文 ...
- 【Python—参数】*arg与**kwargs参数的用法
在python中,这两个是python中的可变参数,*arg表示任意多个无名参数,类型为tuple;**kwargs表示关键字参数,为dict. # *允许你传入0个或任意个参数,这些可变参数在函数调 ...
- kmp(前缀出现次数next应用)
http://acm.hdu.edu.cn/showproblem.php?pid=3336 Count the string Time Limit: 2000/1000 MS (Java/Other ...
- 6、numpy——高级索引
NumPy 比一般的 Python 序列提供更多的索引方式.除了之前看到的用整数和切片的索引外,数组可以由整数数组索引.布尔索引及花式索引. 1.整数数组索引 1.1 以下实例获取数组中(0,0),( ...
- #python# 使用代理和不使用代理对比
import urllib.request url='http://httpbin.org/ip' #不使用代理 response1=urllib.request.urlopen(url) #设置代理 ...
- 20191114PHP文件操作
<meta charset="utf-8"><?php// $fn=fopen("c:\\abc.txt","w"); / ...
- 道路模型--linear-parabolic model
读过很多道路追踪的论文,经常都需要道路模型的建模.我不知道是不是因为自己太笨还是怎样,好多人建的模型我实在无法理解他的用意何在,而且我真的深刻怀疑他们那些模型的参数是不是真的可以求出来.就比如这篇文章 ...
- JavaScript深入之类数组对象与arguments(转载)
类数组对象 所谓的类数组对象: 拥有一个 length 属性和若干索引属性的对象 举个例子: var array = ['name', 'age', 'sex']; var arrayLike = { ...