广告
返回顶部
首页 > 资讯 > 数据库 >优化MySQL的3个简单小调整分别是什么
  • 585
分享到

优化MySQL的3个简单小调整分别是什么

2024-04-02 19:04:59 585人浏览 安东尼
摘要

本篇文章为大家展示了优化Mysql的3个简单小调整分别是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。如果你不改变 mysql 的缺省配置,你的服务器的性能就像

本篇文章为大家展示了优化Mysql的3个简单小调整分别是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。

如果你不改变 mysql 的缺省配置,你的服务器的性能就像题图的坏在一档的法拉利一样 “虎落平阳被犬欺” 

我并不期望成为一个专家级的 DBA,但是,在我优化 Mysql 时,我推崇 80/20 原则,明确说就是通过简单的调整一些配置,你可以压榨出高达 80% 的性能提升。尤其是在服务器资源越来越便宜的当下。

警告

  1. 没有两个数据库或者应用程序是完全相同的。这里假设我们要调整的数据库是为一个“典型”的 WEB 网站服务的,优先考虑的是快速查询、良好的用户体验以及处理大量的流量。

  2. 在你对服务器进行优化之前,请做好数据库备份!

1、 使用 InnoDB 存储引擎

如果你还在使用 MyISAM 存储引擎,那么是时候转换到 InnoDB 了。有很多的理由都表明 InnoDB 比 MyISAM 更有优势,如果你关注性能,那么,我们来看一下它们是如何利用物理内存的:

  • MyISAM:仅在内存中保存索引

  • InnoDB:在内存中保存索引数据。

结论:保存在内存的内容访问速度要比磁盘上的更快。

下面是如何在你的表上去转换存储引擎的命令:

ALTER TABLE table_name ENGINE=InnoDB;

注意:你已经创建了所有合适的索引,对吗?为了更好的性能,创建索引永远是***优先考虑的事情。

2、 让 InnoDB 使用所有的内存

你可以在 my.cnf 文件中编辑你的 MySQL 配置。使用 innodb_buffer_pool_size 参数去配置在你的服务器上允许 InnoDB 使用物理内存数量。

对此(假设你的服务器仅仅运行 MySQL),公认的“经验法则”是设置为你的服务器物理内存的 80%。在保证操作系统不使用交换分区而正常运行所需要的足够内存之后 ,尽可能多地为 MySQL 分配物理内存。

因此,如果你的服务器物理内存是 32 GB,可以将那个参数设置为多达 25 GB。

innodb_buffer_pool_size = 25600M

*注意:(1)如果你的服务器内存较小并且小于 1 GB。为了适用本文的方法,你应该去升级你的服务器。 (2) 如果你的服务器内存特别大,比如,它有 200 GB,那么,根据一般常识,你也没有必要为操作系统保留多达 40 GB 的内存。 *

3、 让 InnoDB 多任务运行

如果服务器上的参数 innodb_buffer_pool_size 的配置是大于 1 GB,将根据参数 innodb_buffer_pool_instances 的设置, 将 InnoDB 的缓冲池划分为多个。

拥有多于一个的缓冲池的好处有:

多线程同时访问缓冲池时可能会遇到瓶颈。你可以通过启用多缓冲池来最小化这种争用情况:

对于缓冲池数量的官方建议是:

为了实现***的效果,要综合考虑 innodb_buffer_pool_instancesinnodb_buffer_pool_size 的设置,以确保每个实例至少有不小于 1 GB 的缓冲池。

因此,在我们的示例中,将参数 innodb_buffer_pool_size 设置为 25 GB 的拥有 32 GB 物理内存的服务器上。一个合适的设置为 25600M / 24 = 1.06 GB

innodb_buffer_pool_instances = 24

注意!

在修改了 my.cnf 文件后需要重启 MySQL 才能生效:

sudo service mysql restart

上述内容就是优化MySQL的3个简单小调整分别是什么,你们学到知识或技能了吗?如果还想学到更多技能或者丰富自己的知识储备,欢迎关注编程网数据库频道。

您可能感兴趣的文档:

--结束END--

本文标题: 优化MySQL的3个简单小调整分别是什么

本文链接: https://www.lsjlt.com/news/67791.html(转载时请注明来源链接)

有问题或投稿请发送至: 邮箱/279061341@qq.com    QQ/279061341

本篇文章演示代码以及资料文档资料下载

下载Word文档到电脑,方便收藏和打印~

下载Word文档
猜你喜欢
  • 优化MySQL的3个简单小调整分别是什么
    本篇文章为大家展示了优化MySQL的3个简单小调整分别是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。如果你不改变 MySQL 的缺省配置,你的服务器的性能就像...
    99+
    2022-10-19
  • 优化SQL SELECT语句性能的6个简单技巧分别是什么
    本篇文章给大家分享的是有关优化SQL SELECT语句性能的6个简单技巧分别是什么,小编觉得挺实用的,因此分享给大家学习,希望大家阅读完这篇文章后可以有所收获,话不多说,跟着小编一起来看看吧。SELECT语...
    99+
    2022-10-19
  • MySQL优化的三个小秘诀是什么
    今天小编给大家分享一下MySQL优化的三个小秘诀是什么的相关知识点,内容详细,逻辑清晰,相信大部分人都还太了解这方面的知识,所以分享这篇文章给大家参考一下,希望大家阅读完这篇文章后有所收获,下面我们一起来了解一下吧。警告没有两个数据库或者应...
    99+
    2023-06-27
  • 解决Kubernetes Pod故障的5个简单技巧分别是什么
    本篇文章为大家展示了解决Kubernetes Pod故障的5个简单技巧分别是什么,内容简明扼要并且容易理解,绝对能使你眼前一亮,通过这篇文章的详细介绍希望你能有所收获。在很多情况下,你可能会发现Kubernetes中的应用程序没有正确地部署...
    99+
    2023-06-16
  • 优化Kubernetes成本的9个办法分别是什么
    这篇文章将为大家详细讲解有关优化Kubernetes成本的9个办法分别是什么,文章内容质量较高,因此小编分享给大家做个参考,希望大家阅读完这篇文章后对相关知识有一定的了解。Kubernetes统治着容器市场。根据CNCF的一项调查,到202...
    99+
    2023-06-15
  • 使用Python加速数据分析的10个简单技巧分别是什么
    这期内容当中小编将会给大家带来有关使用Python加速数据分析的10个简单技巧分别是什么,文章内容丰富且以专业的角度为大家分析和叙述,阅读完这篇文章希望大家可以有所收获。提示和技巧,尤其是在编程领域,可能是非常有用的。有时,一个小技巧可以节...
    99+
    2023-06-16
  • MySQL性能优化的21条经验分别是什么
    这篇文章给大家介绍MySQL性能优化的21条经验分别是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。 今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显...
    99+
    2022-10-18
  • 项目中常用的19条MySQL优化分别是是什么
    项目中常用的19条MySQL优化分别是是什么,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。一、EXPLAIN做M...
    99+
    2022-10-19
  • web开发中网站优化的六个细节分别是什么
    这篇文章给大家介绍web开发中网站优化的六个细节分别是什么,内容非常详细,感兴趣的小伙伴们可以参考借鉴,希望对大家能有所帮助。做SEO大家都明白一个道理,就是简单的事情重复去做。这就是所谓的SEO最简单的方...
    99+
    2022-10-19
  • MySQL项目中常用的19条优化方法分别是什么
    MySQL项目中常用的19条优化方法分别是什么,很多新手对此不是很清楚,为了帮助大家解决这个难题,下面小编将为大家详细讲解,有这方面需求的人可以来学习下,希望你能有所收获。今天共提到19条常用的MySQL优...
    99+
    2022-10-19
  • 关于MySQL数据库配置优化的15条建议分别是什么
    今天就跟大家聊聊有关关于MySQL数据库配置优化的15条建议分别是什么,可能很多人都不太了解,为了让大家更加了解,小编给大家总结了以下内容,希望大家根据这篇文章可以有所收获。概述今天主要分享一下关于mysq...
    99+
    2022-10-19
  • 7个管理和优化网站资源的Python工具分别是什么呢
    7个管理和优化网站资源的Python工具分别是什么呢,相信很多没有经验的人对此束手无策,为此本文总结了问题出现的原因和解决方法,通过这篇文章希望你能解决这个问题。汇总一些管理、压缩、缩小网站资源的工具在这里供大家各取所需。1️⃣django...
    99+
    2023-06-02
软考高级职称资格查询
编程网,编程工程师的家园,是目前国内优秀的开源技术社区之一,形成了由开源软件库、代码分享、资讯、协作翻译、讨论区和博客等几大频道内容,为IT开发者提供了一个发现、使用、并交流开源技术的平台。
  • 官方手机版

  • 微信公众号

  • 商务合作