【MySQL性能优化】概述与优化方面(一)

本文涉及的产品
云数据库 RDS MySQL,集群系列 2核4GB
推荐场景:
搭建个人博客
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
云数据库 RDS PostgreSQL,集群系列 2核4GB
简介: 【MySQL性能优化】概述与优化方面(一)

【MySQL性能优化】概述与优化方面(一)【MySQL性能优化】概述与优化方面(一)


像sql语句如何进行调优,基本上在中高级程序员面试中都有可能会被问到。


所以说,了解,或者学习一下如何进行sql调优是必要的。


我会关于该sql调优文章出一个系列的博客。与大家一起学下去


首先不具体进行介绍,先大体的概括一下,因为答案基本是死的,但是处理方式是活的


MySQL性能优化/概述


1.数据库的设计

目前只要知道三范式就可以了


2.数据库的分表分库

分库分为两种,水平分割和垂直分割

分表是在同一个数据库当中,减少一个表的查询压力


3.怎么定位慢查询

如果需要知道定位在哪里进行sql调优,那么我们就需要慢查询了


4.数据库索引的优化、索引原理


5.sql的调优


6.数据库的读写分离

可以使用mycat中间件来做读写分离


7.存储过程、触发器、函数

存储过程你可以看成一块sql语句,一个整体,也就是执行很多条sql语句。

好处是安全性高,你看不到sql语句,你只需要传参就行了。其实一般也就银行项目用到。

弊端就是,sql语句都是写死的,不好灵活改变。


MySQL如何实现优化


1.数据库设计合理

首先第一点,数据库设计要合理,一般都要遵循三范式。

数据库设计基本上考察的是工作经验,如果你经验不足,可能数据库设计的不合理,导致开发困难。


2.添加索引

其次就是添加索引,如果不加索引,基本上查找都叫全表扫描

当你使用了索引时,索引底层使用的BTree,和折半查找算法差不多,可以减少全表扫描的时间

索引分为:普通索引,主键索引,唯一索引和全文索引


3.分表分库技术

还有就是分表分库技术,主要是为了减少单张的查询量。

在外面的核心是通过哈希移植性,也就是取模分表,还有水平分割,垂直分割


4.读写分离

还有就是读写分离

也就是读一个写一个,减少io量,提高io性能


5.存储过程

另外就是使用存储过程,比直接执行sql语句,使用jdbc连接效率高

这点基本


6.配置mysql最大连接数

其实就是并发的时候,提高了并发性能

一般在my.ini中配置


7.mysql服务器升级

也就是把服务器弄好一点


8.随时清理碎片化


9.sql语句的调优


其实也就是上面这九点。但是实际上需要我们调优的核心只有:

sql语句调优,添加索引,分表分库,读写分离,还有数据库设计

其他的都是小细节上面的


怎么实现优化,在后面的文章,我会一一道来


相关实践学习
如何快速连接云数据库RDS MySQL
本场景介绍如何通过阿里云数据管理服务DMS快速连接云数据库RDS MySQL,然后进行数据表的CRUD操作。
全面了解阿里云能为你做什么
阿里云在全球各地部署高效节能的绿色数据中心,利用清洁计算为万物互联的新世界提供源源不断的能源动力,目前开服的区域包括中国(华北、华东、华南、香港)、新加坡、美国(美东、美西)、欧洲、中东、澳大利亚、日本。目前阿里云的产品涵盖弹性计算、数据库、存储与CDN、分析与搜索、云通信、网络、管理与监控、应用服务、互联网中间件、移动服务、视频服务等。通过本课程,来了解阿里云能够为你的业务带来哪些帮助     相关的阿里云产品:云服务器ECS 云服务器 ECS(Elastic Compute Service)是一种弹性可伸缩的计算服务,助您降低 IT 成本,提升运维效率,使您更专注于核心业务创新。产品详情: https://www.aliyun.com/product/ecs
目录
相关文章
|
1月前
|
缓存 关系型数据库 MySQL
MySQL索引策略与查询性能调优实战
在实际应用中,需要根据具体的业务需求和查询模式,综合运用索引策略和查询性能调优方法,不断地测试和优化,以提高MySQL数据库的查询性能。
176 66
|
9天前
|
SQL 关系型数据库 MySQL
深入解析MySQL的EXPLAIN:指标详解与索引优化
MySQL 中的 `EXPLAIN` 语句用于分析和优化 SQL 查询,帮助你了解查询优化器的执行计划。本文详细介绍了 `EXPLAIN` 输出的各项指标,如 `id`、`select_type`、`table`、`type`、`key` 等,并提供了如何利用这些指标优化索引结构和 SQL 语句的具体方法。通过实战案例,展示了如何通过创建合适索引和调整查询语句来提升查询性能。
76 9
|
1月前
|
SQL 关系型数据库 MySQL
大厂面试官:聊下 MySQL 慢查询优化、索引优化?
MySQL慢查询优化、索引优化,是必知必备,大厂面试高频,本文深入详解,建议收藏。关注【mikechen的互联网架构】,10年+BAT架构经验分享。
大厂面试官:聊下 MySQL 慢查询优化、索引优化?
|
2天前
|
关系型数据库 MySQL 数据库
【MySQL基础篇】MySQL概述、Windows下载MySQL8.0超详细图文安装教程
在这一章节,主要介绍两个部分,数据库相关概念及MySQL数据库的介绍、下载、安装、启动及连接。接着,详细描述了MySQL 8.0的版本选择与下载,推荐使用社区版(免费)。安装过程包括自定义安装路径、配置环境变量、启动和停止服务、以及客户端连接测试。此外,还提供了在同一台电脑上安装多个MySQL版本的方法及卸载步骤。最后,解释了关系型数据库(RDBMS)的特点,即基于二维表存储数据,使用SQL语言进行操作,格式统一且便于维护。通过具体的结构图展示了MySQL的数据模型,说明了数据库服务器、数据库、表和记录之间的层次关系。
【MySQL基础篇】MySQL概述、Windows下载MySQL8.0超详细图文安装教程
|
13天前
|
缓存 关系型数据库 MySQL
MySQL 索引优化以及慢查询优化
通过本文的介绍,希望您能够深入理解MySQL索引优化和慢查询优化的方法,并在实际应用中灵活运用这些技术,提升数据库的整体性能。
54 18
|
12天前
|
缓存 关系型数据库 MySQL
MySQL 索引优化以及慢查询优化
通过本文的介绍,希望您能够深入理解MySQL索引优化和慢查询优化的方法,并在实际应用中灵活运用这些技术,提升数据库的整体性能。
18 7
|
11天前
|
缓存 关系型数据库 MySQL
MySQL 索引优化与慢查询优化:原理与实践
通过本文的介绍,希望您能够深入理解MySQL索引优化与慢查询优化的原理和实践方法,并在实际项目中灵活运用这些技术,提升数据库的整体性能。
41 5
|
1月前
|
SQL 关系型数据库 MySQL
MySQL慢查询优化、索引优化、以及表等优化详解
本文详细介绍了MySQL优化方案,包括索引优化、SQL慢查询优化和数据库表优化,帮助提升数据库性能。关注【mikechen的互联网架构】,10年+BAT架构经验倾囊相授。
MySQL慢查询优化、索引优化、以及表等优化详解
|
1月前
|
关系型数据库 MySQL Java
MySQL索引优化与Java应用实践
【11月更文挑战第25天】在大数据量和高并发的业务场景下,MySQL数据库的索引优化是提升查询性能的关键。本文将深入探讨MySQL索引的多种类型、优化策略及其在Java应用中的实践,通过历史背景、业务场景、底层原理的介绍,并结合Java示例代码,帮助Java架构师更好地理解并应用这些技术。
33 2
|
1月前
|
SQL 关系型数据库 MySQL
MySQL性能探究:count(*)与count(1)的性能对决
在MySQL数据库的性能优化中,对查询语句的细微差别有着深入的理解是非常重要的。`count(*)`和`count(1)`是两种常用的聚合函数,用于计算行数。在面试中,面试官经常会问到这两种函数的性能差异。本文将探讨`count(*)`与`count(1)`的性能对比,并整理十道经典的MySQL面试题,帮助你在面试中游刃有余。
81 3