当前位置:主页 > 查看内容

MySQL的内存和相关问题排查

发布时间:2021-05-25 00:00| 位朋友查看

简介:我们都知道数据库是IO密集型一类应用,为了提高其性能大量使用内存代替文件(交换分区)的IO操作是保证数据库稳定、高效的基本原则。那么数据库是如何使用内存的,我们如何查看数据库内存的占用,如何通过通过数据库内存配置设置提高其性能?本文虫虫就以Mys……

我们都知道数据库是IO密集型一类应用,为了提高其性能大量使用内存代替文件(交换分区)的IO操作是保证数据库稳定、高效的基本原则。那么数据库是如何使用内存的,我们如何查看数据库内存的占用,如何通过通过数据库内存配置设置提高其性能?本文虫虫就以Mysql数据库(InnoDB引擎)为例和大家一起了解下Linux数据库和内存相关的主题。

读取内存数据非常快,为了提高性能我们要尽***可能把数据集都放到内存中以保证高效。但是Swap交换分区作为一个救命的稻草,我们还必须要给mysql设置,防止突发情况下内存不够,mysql服务直接被OOM杀掉的情况。同时mysql交换分区占用也是我们衡量一个数据是否健康与否的手段,如果一个数据库频繁的使用了swap则说明,我们需要人工干预优化数据库了。

内存占用

在Linux下,我们可以通过使用一些shell命令来了解MySQL的内存使用情况。

首先使用ps命令来查看mysqld进程的内存使用情况:

  1. ps -eo size,pid,user,command --sort -size|grep mysqld 
  2. |awk '{hr=$1/1024;printf("%13.2f MB",hr)} {for (x=4;x<=NF;x++){printf("%s",$x)}print ""}' 
  3. |cut -d "" -f2|cut -d "-" -f1 

MySQL的内存和相关问题排查


本文转载自网络,原文链接:https://www.toutiao.com/a6611378827593515533/
本站部分内容转载于网络,版权归原作者所有,转载之目的在于传播更多优秀技术内容,如有侵权请联系QQ/微信:153890879删除,谢谢!

推荐图文

  • 周排行
  • 月排行
  • 总排行

随机推荐