暂无图片
mysql服务器未运行情况下内存占比很高
我来答
分享
暂无图片 匿名用户
mysql服务器未运行情况下内存占比很高

背景:

项目需要申请linux 虚机作为mysql db服务器,配置是16c 16g内存,服务器上刚安装mysql服务和keepalived集群后,服务还没启动的情况下,发现系统内存已使用9G,重新启动服务器后情况依旧如此,这9G的内存是被什么给占住了?麻烦专家给下解答,谢谢!


我来答
添加附件
收藏
分享
问题补充
4条回答
默认
最新
手机用户8157

经过自己的摸索,问题已解决!

内存占用是hugepages导致的,修改/etc/sysctl.conf下面的文件:

#vm.nr_hugepages = 4760
#vm.hugetlb_shm_group = 1008

将上面两行配置注释,然后刷参内存占用消失。


再次感谢各位专家解答!

暂无图片 评论
暂无图片 有用 0
打赏 0
暂无图片
刘贵宾

/etc/sysctl.conf配置文件截图看一下

暂无图片 评论
暂无图片 有用 0
打赏 0
手机用户8157
2022-06-17
kernel.shmall = 2437137 kernel.shmmax = 2147483648 vm.nr_hugepages = 4760 vm.hugetlb_shm_group = 1008
Root__Liu

1、top 进去之后M,可以看到排序后的占用情况,包括pid和命令。
2、显示10个消耗内存最多的进程

ps vx |head -1 ;ps vx |grep -v PID |sort -rn +6 |head -10
复制
暂无图片 评论
暂无图片 有用 0
打赏 0
手机用户8157
2022-06-17
[root@mysqltpl ~]# ps vx |head -1 ;ps vx |grep -v PID |sort -rn|head -10 PID TTY STAT TIME MAJFL TRS DRS RSS %MEM COMMAND 5842 pts/1 S+ 0:00 0 31 108244 688 0.0 head -10 5841 pts/1 S+ 0:00 0 102 126737 928 0.0 sort -rn 5839 pts/1 R+ 0:00 0 90 153233 1528 0.0 ps vx 5780 pts/1 S 0:00 0 885 115434 2872 0.0 -bash 5779 pts/1 S 0:00 0 24 191867 2360 0.0 su - 5778 pts/1 S 0:00 0 134 241285 4712 0.0 sudo su - 5750 ? Ss 0:00 0 798 161005 6196 0.0 sshd: opsadmin [priv] 5719 ? S 0:00 0 0 0 0 0.0 [kworker/2:1] 5700 ? S 0:00 0 0 0 0 0.0 [kworker/6:0] 5694 ? S 0:00 0 0 0 0 0.0 [kworker/7:0]
Uncopyrightable

可以看下内存占用率的进程是哪些?还有需要关注下CPU,如果cpu、内存都是异常的,不属于项目所需的可以自查虚拟机是否存在安全问题~

top -o %MEM

ps aux|head -1;ps aux|grep -v PID|sort -rn -k +4|head

暂无图片 评论
暂无图片 有用 0
打赏 0
手机用户8157
2022-06-17
[root@mysqltpl ~]# ps aux|head -1;ps aux|grep -v PID|sort -rn -k +4|head USER PID %CPU %MEM VSZ RSS TTY STAT START TIME COMMAND root 837 0.0 0.2 363372 33896 ? Ssl 10:25 0:12 /usr/bin/python2 -Es /usr/sbin/firewalld --nofork --nopid root 1152 0.0 0.1 574280 17452 ? Ssl 10:25 0:03 /usr/bin/python2 -Es /usr/sbin/tuned -l -P zabbix 1284 0.0 0.0 79424 2260 ? S 10:25 0:02 /usr/sbin/zabbix_agentd: active checks #1 [idle 1 sec] zabbix 1283 0.0 0.0 79424 1832 ? S 10:25 0:00 /usr/sbin/zabbix_agentd: listener #3 [waiting for connection] zabbix 1281 0.0 0.0 79424 1832 ? S 10:25 0:00 /usr/sbin/zabbix_agentd: listener #2 [waiting for connection] zabbix 1280 0.0 0.0 79424 1832 ? S 10:25 0:00 /usr/sbin/zabbix_agentd: listener #1 [waiting for connection] zabbix 1279 0.0 0.0 79424 1880 ? S 10:25 0:08 /usr/sbin/zabbix_agentd: collector [idle 1 sec] zabbix 1275 0.0 0.0 79424 1280 ? S 10:25 0:00 /usr/sbin/zabbix_agentd -c /etc/zabbix/zabbix_agentd.conf rpc 813 0.0 0.0 69256 1012 ? Ss 10:25 0:00 /sbin/rpcbind -w root 96 0.0 0.0 0 0 ? S< 10:25 0:00 [deferwq]
Uncopyrightable
答主
2022-06-17
感觉没有比较占资源的进程,python也不是很高
回答交流
Markdown


请输入正文
提交
相关推荐
InnoDB存储引擎支持XA事务吗?
回答 2
已采纳
XA事务即分布式事务,目前在MySQL的存储引擎中,只有InnoDB存储引擎支持XA。需要注意的,在使用分布式事务时,InnoDB存储引擎的隔离级别必须设置为serializable。通过参数inno
mysql如何统计binlog的生成频率,例如每小时生成多少个?
回答 1
要统计MySQL的binlog生成频率,你可以使用以下方法:1.使用SHOWMASTERSTATUS命令获取当前的binlog文件名和位置。SHOWMASTERSTATUS;2.创建一个定时任务,每小
MySQL转储表数据太多导致卡住,怎么转储成多个SQL文件?
回答 1
试试用mysqldump导出
MySQL中limit的作用是什么?
回答 1
已采纳
limit限制返回结果行数,主要用于查询之后要显示返回的前几条或者中间某几行数据,其写法如下所示:&nbsp;LIMIT0,100;表示从起始角标为0的位置,往后获取100条记录,也可简写为LIMIT
truncate命令可以用来删除部分数据吗
回答 4
不可以。首先要理解一个问题,truncate被归结为DDL语句,如果这么解释应该会更好理解,那就是truncate执行是删除现有表空间并创建一个新表空间,相对的表中的数据也是被删除的。
在mysql5.7版本中,重命名数据库的方法通常有几种?
回答 2
已采纳
第一种方法:RENAMEdatabaseolddbnameTOnewdbname这个是5.1.7到5.1.23版本可以用的,但是官方不推荐,会有丢失数据的危险第二种方法:1.创建需要改成新名的数据库。
MySQL怎样对账户进行资源限制?
回答 1
已采纳
限制客户端使用MySQL数据库资源的方式之一是设置全局参数maxuserconnections为非零值。maxuserconnections参数限制了给定账户的并发连接数,但对连接的后续操作没有限制。
events_statements_current、events_statements_history,events_statements_history_long 三者的关系
回答 1
history记录的是每个线程最近完成的10个事件,historylong是从全局看,每个线程最近完成的10000个事件,这俩都是可以配置的。重启后均会清空,因为performanceschema收集
国内做MySQL分布式数据库比较好的厂商是哪家?
回答 2
已采纳
mysql方面:腾讯tdsql,中兴GoldenDB,PinCAP的TIDB,电信的TeleDB,万里的Greatdb
explain analyze delete 后出现not executable by iterator executor 提示,是什么意思?
回答 2
它表示查询计划无法通过迭代执行器来执行。这通常发生在以下情况下:查询计划使用了一些不支持迭代执行器的操作符:有些操作符可能无法被迭代执行器处理,例如某些特定的聚合函数、子查询类型等。因此,如果查询计划