MySQL中级优化教程(九)——Linux服务器软硬配置优化

系统配置优化:

数据库是基于操作系统的,目前大多数MySQL都是安装在了Linux系统之上,所以对操作系统的一些参数配置也会影响到MySQL的性能,下面是一些常用参数:

网络方面配置:要修改/etc/sysctl.conf文件

在开发过程中,或许我们经常会遇到这种连接:time out… time wait等,这时我们就需要对下列配置参数进行优化:

#增加tcp支持的队列数
net.ip4.tcp_max_syn_backlog = 65525
#减少断开连接时长,加快资源回收
net.ipv4.tcp_max_tw_buckets = 8000
net.ipv4.tcp_tw_reuse = 1
net.ipv4.tcp_tw_recycle = 1
net.ipv4.tcp_fin_timeout = 10

还有一个需要我们注意的配置,那就是MySQL打开文件数的限制,可以使用ulimit -a查看目录的各位限制,可以修改/etc/security/limits.conf文件,增加以下内容以修改打开文件数量的限制。

soft nofile 65535
hard nofile 65535

 

给mysql默认设置的打开文件数的限制是1024,当我们项目比较大,数据库表比较多时,改动这个配置就很有必要,提高数据库访问并发。

除此之外,最好在MySQL的服务器上关闭iptables、selinux等防火墙软件,只留下硬件防火墙,因为软件防火墙会对远程数据库链接造成一定的影响,当链接并发量较高时,这就会降低我们数据库的响应效率。

 

服务器硬件优化:

首先我们应该知道,对数据库影响最大的莫过于三个因素:cpu运算处理能力、磁盘的IO读写效率和内存大小,因此我们选择MySQL数据库服务器时要重点注意这三者的配置。

如何选择呢?

在cpu反面,现在对于mysql数据库来说,还是单cpu高频率的服务器更适合一些,因为现在来讲一个MySQL的一条SQL语句只能使用到一个cpu核心进行运算(这种情况在MySQL8.0.15版本中已经开始有了变化)。

其它二者,没有上限,磁盘IO性能越好,数据库读写操作越快。服务器内存越大,数据库就可以多从内存中读,少丛磁盘中读,这二者速度相差了数十倍甚至数百倍。

更多详细硬件配置优化可以参考本篇博文:https://blog.csdn.net/qq_25825923/article/details/84258593
 

    原文作者:请保持优秀。
    原文地址: https://blog.csdn.net/IT_TIfarmer/article/details/92380327
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞