MySQL-Server在小内存服务器上的配置项

2021-10-08 944点热度 0人点赞 0条评论

前言

如果自己个人搭个小网站,例如博客之类的,流量小,不需要很好的配置的服务器,可以买内存和CPU较小的服务器,不过要在上面安装MySQL Server,跑了一会儿就会把服务器内存吃掉大部分。

我们可以对MySQL进行配置,来达到节约内存的目的

实现

修改MySQL配置文件,一般是在服务器上的/etc/my.cnf 或者是/etc/my.cnf.d/目录下看有没有配置文件,可能是mysql-server.cnf

添加如下配置(注意如果配置文件里有[mysqld]了,只要添加[mysqld]下面的内容)

[mysqld]
performance_schema_max_table_instances=400 #设置效果不明显
table_definition_cache=400
performance_schema=off #效果明显
table_open_cache=64
innodb_buffer_pool_chunk_size=64M #效果不明显
innodb_buffer_pool_size=64M #效果不明显

重新启动MySQL:

#可能是mysqld、mysql-server看你的安装情况
systemctl restart mysqld
systemctl restart mysql-server

top查看MySQL内存占用情况

top - 08:27:48 up 37 days, 12:47,  1 user,  load average: 1.97, 2.04, 2.00
Tasks: 101 total,   1 running, 100 sleeping,   0 stopped,   0 zombie
%Cpu(s):  0.0 us,  0.2 sy, 79.4 ni, 19.9 id,  0.0 wa,  0.5 hi,  0.0 si,  0.0 st
MiB Mem :   3738.1 total,    122.9 free,   3072.9 used,    542.3 buff/cache
MiB Swap:      0.0 total,      0.0 free,      0.0 used.    446.6 avail Mem

    PID USER      PR  NI    VIRT    RES    SHR S  %CPU  %MEM     TIME+ COMMAND
1171834 mysql     20   0 1489112 126940   1396 S   0.3   3.3   6:21.09 mysqld

看到只占用3.3%的内存,修改前占用了15%左右的内存

admin

这个人很懒,什么都没留下

文章评论

您需要 登录 之后才可以评论