高并发大流量专题---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数据库层的优化的更多相关文章

  1. 高并发大流量专题---3、前端优化(减少HTTP请求次数)

    高并发大流量专题---3.前端优化(减少HTTP请求次数) 一.总结 一句话总结: 图片地图:使用<map><area></area></map>标签. ...

  2. 高并发大流量专题---11、Web服务器的负载均衡

    高并发大流量专题---11.Web服务器的负载均衡 一.总结 一句话总结: 推荐使用nginx七层(应用层)负载均衡的实现:配置那是相当的简单 http{ upstream cluster{ serv ...

  3. 高并发大流量专题---5、CDN加速

    高并发大流量专题---5.CDN加速 一.总结 一句话总结: CDN就是多整几台节点服务器,选距离用户最近的服务器来给用户服务,实现的话可以用阿里云.腾讯云他们提供的功能,简单方便,妈妈再也不用担心我 ...

  4. nodejs高并发大流量的设计实现,控制并发的三种方法

    nodejs高并发大流量的设计实现,控制并发的三种方法eventproxy.async.mapLimit.async.queue控制并发Node.js是建立在Google V8 JavaScript引 ...

  5. 一文总结高并发大数据量下MySQL开发规范【军规】

    在互联网公司中,MySQL是使用最多的数据库,那么在并发量大.数据量大的互联网业务中,如果高效的使用MySQL才能保证服务的稳定呢?根据本人多年运维管理经验的总结,梳理了一些核心的开发规范,希望能给大 ...

  6. php解决与处理网站高并发 大流量访问的方法

    方法/步骤   首先,确认服务器硬件是否足够支持当前的流量 普通的P4服务器一般最多能支持每天10万独立IP,如果访问量比这个还要大, 那么必须首先配置一台更高性能的专用服务器才能解决问题 ,否则怎么 ...

  7. 大并发大数量中的MYSQL瓶颈与NOSQL介绍

    NoSQL在2010年风生水起,大大小小的Web站点在追求高性能高可靠性方面,不由自主都选择了NoSQL技术作为优先考虑的方面.今年伊始,InfoQ中文站有幸邀请到凤凰网的孙立先生,为大家分享他之于N ...

  8. [原创]lvs+ospf+nginx实现高可用大流量web架构

    lvs+ospf+nginx实现高可用大流量web架构配置总概述 架构图: 配置如下: .quagga之zebra配置: # cat /etc/quagga/zebra.conf ! ! Zebra ...

  9. MySQL性能调优与架构设计——第8章 MySQL数据库Query的优化

    第8章 MySQL数据库Query的优化 前言: 在之前“影响 MySQL 应用系统性能的相关因素”一章中我们就已经分析过了Query语句对数据库性能的影响非常大,所以本章将专门针对 MySQL 的 ...

随机推荐

  1. Proxifier全局代理

    0x00前言   成功搭建使用shadowshocks实现代理访问google,然而只能浏览器代理方式使用,不能其他程序使用代理,不利于白帽子匿名安全检测,下面将介绍利用Proxifier实现全局代理 ...

  2. Windows系统CVE整理

    CVE-2018-8420(RCE) 受影响版本: Microsoft Windows 10 Version 1607 for 32-bit Systems Microsoft Windows 10 ...

  3. jQuery将字符串转换为数字

    1:parseInt(string)  parseInt("1234blue"); //returns 1234 parseInt("123"); //retu ...

  4. js实现千位符分隔

    前几天面试做保险项目的公司,被问到了一道实现千位符分割方法的题,乍一看挺简单,但做起来最后却没给出来一个合适的解决方法.回来自己琢磨了一个还行的答案. var num = 3899000001, ar ...

  5. luoguP1965 转圈游戏(NOIP2013)(快速幂)

    luogu P1965 转圈游戏 题目 #include<iostream> #include<cstdlib> #include<cstdio> #include ...

  6. P4126 [AHOI2009]最小割(网络流+tarjan)

    P4126 [AHOI2009]最小割 边$(x,y)$是可行流的条件: 1.满流:2.残量网络中$x,y$不连通 边$(x,y)$是必须流的条件: 1.满流:2.残量网络中$x,S$与$y,T$分别 ...

  7. python-内置常量

    引言 Python的内置常量不多,只有6个,分别是True.False.None.NotImplemented.Ellipsis.__debug__ 一.True 1.True是bool类型用来表示的 ...

  8. 2019-9-8-WPF-渲染原理

    title author date CreateTime categories WPF 渲染原理 lindexi 2019-9-8 10:40:0 +0800 2018-7-15 16:2:47 +0 ...

  9. java插件提示安全设定高,不能加载解决方法

    当不可信小应用程序或应用程序在 Web 浏览器中运行时,我应当如何控制? 本文适用于: Java 版本: 7.0, 8.0 通过 Java 控制面板设置安全级别 在 Java 控制面板中,单击 Sec ...

  10. python3输出中文报错的原因,及解决办法(基于pycharm)

    通常python3里面如果有中文,在不连接其他设备和程序的情况下,报错信息大致如下: SyntaxError: Non-UTF-8 code starting with '\xd6' in file ...