先讲一个开篇故事
警察蜀季:说说吧,到底是怎么回事?
面试官王小龙:警察同志,他用简历砸我,划破了我娇嫩的皮肤!
求职者李虎:啊,你欠揍!
营察:要严肃认识自己错误!
李二虎:是是是,智察同志!但是你不知道他有多气人!
警察:气人?说来听听。
李二虎:事情是这样子的,我是一名程序员,今天去他们公司面试,主要是关于MySQL数据库优化的思路.他问我条SQL语句执行得很慢的原因有哪些? 我答完之后他说不对。我气不过。警察: 这道题我略懂,你怎么答的呀?
李二虎:我说可能是主机本身配置不行,或者开着其它进程吧!
警察:还有呢?
李二虎:没了呀
警察:“小伙子这就是你的不对了 ,这个问题看似简单 ,但可以涉及到一 大堆MySQL的核心知识,这里面的原因多若呢,可能是:
(1)数据库在刷新脏页,例如redo log写满了需要同步到磁盘;内存不够用了;
(2)执行的时候,遇到锁,如表锁、行锁:
(3)没有用上索引;
(4)数据库透错了索引:
当然也可能是SQL本身就写的很菜,那就需要SQL优化了。
这些就不细细展开来讲了,不然我们得唠天。”
王小龙、李虎:大神!
警家:鉴于这次起因简单,事件清晰,处理结果如下:二虎你要向王小龙同志道歉;创可贴的费用由你承担;同时罚你好好掌握MySQL吧!
王小龙:谢谢警案同志!"
李二虎:好吧,那么,我只想知道,MySQL的优化思路都有哪些
其实,数据库是一个非常大的话题,我们在很多地方,都会看到对数据库的性能分析会包括以下部分。
但上面这些都是最最基本的东西,是每个开发人员都必须学会的东西。
随着业务的日渐复杂,性能优化俨然成为了每一位技术人的必修课。 从产品角度来看,性能就是“攻城略地”的最佳武器,我们期待能更苛刻地使用计算机和网络设备,去做性价比更高的事儿;而对程序员个人而言,具备系统的性能优化方法论,无论在架构设计还是应用模块开发上我们都能得心应手,还能轻松应对大厂面试、技术等级晋升考核等等。
当下业务发展速度极快且复杂,后端几乎都是分布式系统,“如何全面提升复 杂集群的性能”无疑成为了最新课题。但如果你有意关注过这方面的信息,就会发现这部分资料市面上其实少之又少。
今天小编给大家送福利啦+XXX_WWW666666获取MySQL性能调优与架构设计解析文档+MySQL100问
MySQL性能调优与架构设计解析文档
一、基础篇
第1 章MySQL 基本介绍
第2 章MySQL 架构组成
第 3 章 MySQL 存储引擎简介
第 4 章 MySQL 安全管理
第 5 章 MySQL 备份与恢复
二、性能优化篇
第 6 章 影响 MySQL Server 性能的相关因素
第 7 章 MySQL 数据库锁定机制
第 8 章 MySQL 数据库 Query 的优化
第 9 章 MySQL 数据库 Schema 设计的性能优化
第 10 章 MySQL Server 性能优化
第 11 章 常用存储引擎优化
三、架构设计篇
第 12 章 MySQL 可扩展设计的基本原则
第 13 章 可扩展性设计之 MySQL Replication
第 14 章 可扩展性设计之数据切分
第 15 章 可扩展性设计之 Cache 与 Search 的利用
第 16 章 MySQL Cluster
第 17 章 高可用设计之思路及方案
第 18 章 高可用设计之 MySQL 监控
图片展示:
附带文档:Tomcat架构解析文档
MyQSL 100 问
附带资料spring 100 问