1.软文推荐

2.软文推荐

3.软文推荐

MySQL性能优化就是通过合理安排资源,调整系统参数使MySQL运行更快、更节省资源,本篇文章为大家分享一下MySQL优化的三个小秘诀。

警告

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_instances 和 innodb_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 服务器性能更好。

本文来源:www.lxlinux.net/7389.html,若引用不当,请联系修改。

相关文章 8

1

Linux下搭建Redis简单方法 3分钟前

Redis 是一个高性能的key-value数据库。 redis的出现,很大程度补偿了memcached这类keyvalue存储的不足,在部 分场合可以对关系数据库起到很好的...

2

关于zkeys系统安装的信息 5分钟前

目录:1、如何使用ZKEYS开设云服务器2、ZKEYS系统安装复杂吗?3、ZKEYS公有云管理系统生产的云服务器有哪些主要功能?4、ZKEYS公有云管理系...

3

俄罗斯军方的 GNU/Linux 发行版:Astra Linux 6分钟前

俄罗斯陆军以及情报部门对于信息基础架构安全防护的需求,由 RusBitTech 基于 Debian GNU/Linux 开发了 Astra Linux。 Astra Linux 宣称其许可证既符合...

4

公网ip有什么好处(公网ip有什么好处坏处) 8分钟前

目录:1、什么是公网IP,有什么作用2、公网IP,具体有什么功能3、公网ip有什么风险?正常上网的话会有什么隐私泄露的风险吗?或是会提...

5

Linux curl命令详解 10分钟前

curl是一个非常实用的、用来与服务器之间传输数据的工具;支持的协议包括 DICT, FILE, FTP, FTPS等可以说是一款很强大的http命令行工具,下面...

6

Linux常用命令—nano命令 12分钟前

Linux常用命令 nano 是一个字符终端的文本编辑器,有点像DOS下的editor程序。它比vi/vim要简单得多,比较适合Linux初学者使用。某些Linux发行版...

7

七台河云服务器(七台河中天网络有限公司) 13分钟前

目录:1、云服务是什么2、云计算服务器怎么选择?3、移动云服务器怎么样?4、阿里云服务器是什么5、阿里云服务器租用费用是多少?云服...