导航:首页 > 配服务器 > 服务器内存占用大怎么查看原因

服务器内存占用大怎么查看原因

发布时间:2022-08-03 21:41:14

linux数据库服务器物理内存和虚拟内存满了怎么排查和解决

一、查看物理内存

执行如下命令即可查看物理内存,执行效果如下图所示:

dmidecode -t memory | grep Size

二、配置空间

物理内存是没办法配置的,只能配置虚拟内存,在Linux系统即Swap分区。具体操作swap分区的方法如下:

⑵ SQL Server占用内存过高,什么原因导致的,用什么方法可以解决

经常使用MSSQL的朋友都会发现一个小小的网站在运行若干天后MSSQL就会把服务器上所有的内存都吃光,此时你不得不重新启动一下服务器或mssql来释放内存,有人认为是 MSSQL有内存泄露问题,其实不然,微软给我们了明确说明:在您启动SQL Server 之后,SQL Server内存使用量将会持续稳定上升,即使当服务器上活动很少时也不会下降。另外,任务管理器和性能监视器将显示计算机上可用的物理内存稳定下降,直到可用内存降到 4 至 10 MB 为止。

仅仅出现这种状态不表示内存泄漏。此行为是正常的,并且是 SQL Server 缓冲池的预期行为。
默认情况下,SQL Server 根据操作系统报告的物理内存加载动态增大和收缩其缓冲池(缓存)的大小。只要有足够的内存可用于防止内存页面交换(在 4 至 10 MB 之间),SQL Server缓冲池就会继续增大。像在与SQL Server 分配内存位于相同计算机上的其他进程一样,SQL Server 缓冲区管理器将在需要的时候释放内存。SQL Server每秒可以释放和获取几兆字节的内存,从而使它可以快速适应内存分配变化。
更多信息
您可以通过服务器内存最小值和服务器内存最大值配置选项设置 SQL Server数据库引擎使用的内存(缓冲池)量的上下限。在设置服务器内存最小值和服务器内存最大值选项之前,请查阅以下 Microsoft 知识库文章中标题为'内存'一节中的参考信息:319942 HOW TO:Determine Proper sql server(WINDOWS平台上强大的数据库平台) Configuration Settings(确定正确的 sql server(WINDOWS平台上强大的数据库平台) 配置设置)
请注意,服务器内存最大值选项只限制 SQL Server 缓冲池的大小。服务器内存最大值选项不限制剩余的未保留内存区域,sql server(WINDOWS平台上强大的数据库平台) 准备将该区域分配给其他组件,例如扩展存储过程、COM 对象、以及非共享 DLL、EXE 和 MAPI 组件。由于前面的分配SQL Server专用字节超过服务器内存最大值配置是很正常的。有关此未保留内存区域中分配的其他信息,请单击下面的文章编号,以查看 Microsoft 知识库中相应的文章:316749 PRB:在使用大量数据库时可能没有足够的虚拟内存

下面我们就来实战如何限制MSSQL内存使用:
第一步:打开企业管理器双击进入要修改的MSSQL.
第二步:在左侧MSSQL上点击右键,选择属性,弹出SQL Server属性(配置)对话框(最好打上SQL SP4补丁)
第三步:点击内存选项卡. 在这里,你会看到MSSQL默认设置为使用最大内存,也就是你所有的内存,根据你的需要,设置它的最大值(一般为物理内存-128M)和最小值(一般为最大内存的1/4)吧.
第五步:设置完毕,重启MSSQL服务,配置即可生效!

⑶ 怎么解决服务器内存占用过高的问题呢

服务器内存占用过高的解决方法:
1,首先通过任务管理器进行进程排序,查找占用内存较大的程序进程。一般占用内存较大的进程有W3WP、sqlserver、mysqld-nt.exe;
2, 站点进程w3wp 可以在cmd命令行中通过 iisapp 命令来对应是那个网站占用内存较大。可以通过设置回收时间、内存最大使用值或共用进程池来减少内存的占用,但是如果要保证网站的访问质量,还是建议升级至更高型号来解决;
3,数据库 sql server 也可以通过数据库的企业管理器来设置最大内存占用,但是如果网站程序必须要占用较大内存的话,设置后会发生页面报错、打不开等问题;
4,MYSQL本身会占用较大虚拟内存,如果不使用mysql数据库的话,可以将其停止。

⑷ 如何查看mysql内存占用原因

查看 /proc/meminfo
Tips:
“大内存页”也称传统大页、大页内存等有助于 Linux 进行虚拟内存的管理,标准的内存页为 4KB,这里使用“大内存页”最大可以定义 1GB 的页面大小,在系统启动期间可以使用“大内存页”为应用程序预留一部分内存,这部分内存被占用且永远不会被交换出内存,它会一直保留在那里,直到改变配置。(详细介绍请看下面链接官方解释)
那么这么大页内存是分配给谁的呢?
查询一下:
shell> /proc/sys/vm/hugetlb_shm_group

27
shell> id 27
uid=27(mysql) gid=27(mysql) groups=27(mysql)
hugetlb_shm_group 文件里填的是指定大页内存使用的用户组 id,这里查看到是 MySQL 组 id,那既然是给 MySQL 的为什么 free 等于 total,并且 mysql 还只有 20 多 G 实际使用内存呢?
原来在 MySQL 中还有专门启用大内存页的参数,在 MySQL 大内存页称为 large page。
查看 MySQL 配置文件
发现配置文件中确实有 large-page 配置,但出于禁用状态。

后与业务确认,很早之前确实启用过 mysql 的 large page,不过后面禁用了。排查到这基本就有了结论。
结论

这套环境之前开启了 20000 的大内存页,每页大小为 2MB,占用了 40G 内存空间,给 MySQL 使用,并且 MySQL 开启了 large page,但后来不使用的时候,只关闭了 MySQL 端的 large page 参数,但没有实际更改主机的关于大内存页的配置,所以导致,实际上主机上的还存在 20000 的大内存页,并且没在使用,这一部分长期空闲,并且其他程序不能使用。
所以 MySQL 在使用 20G 内存左右,整个主机内存就饱和了,然后在部分条件下,就触发了 OOM,导致 mysqld 被 kill,但主机上又有 mysqld_safe 守护程序,所以又再次给拉起来,就看到了文章初的偶尔连接不上的现象。

⑸ 关于服务器内存占用大的问题。

服务器上不要装太多的防护软件,一般同一层面的防护软件都是会起冲突的,有可能就是造成内存爆满。

另外,服务器上的防护软件要用服务器上专用的哦,像安全狗、护卫神之类的,不要装火绒之类的电脑上的防护软件,这类软件和服务器上常用软件也可能器冲突,并且不一定能安装得上去哦

⑹ 服务器内存无故使用很高,查不到是哪个进程占用的

最简单的办法,关机,拔掉内存,重新插上OK

⑺ Windows Server2008 R2服务器 内存占用高,但找不到是哪

这个确实不好查,我遇到过一个问题,内存一直再涨,tomcat的,涨到100就死机了,重启就好了,我觉得是内存溢出了。也没解决成,你用ProcessExplorer这个工具查看下吧,这个比较细。

⑻ 如何查看linux服务器内存占用情况

通你的描述,这里以我正在使用的centos 7.2 版本的系统为例, 可以通过如下命令来进行查看:

[root@Backup2 data]# cat /etc/redhat-release

CentOS Linux release 7.2.1511 (Core)

[root@Backup2 data]#

[root@Backup2 data]#free -g

或者

[root@Backup2 data]# free -m

通过上述命令就可以进行查看了,希望能帮到你。。。。。。

⑼ 服务器内存老是满,CPU有满,这是怎么回事有没有知道的

内存配置太低,可以换个内存空间大的。

⑽ linux服务器内存所剩不多了,怎么查原因上周五12点以后内存使用突然上升的

top命令看下服务器硬件使用情况,也可以看到软件程序占用情况。

阅读全文

与服务器内存占用大怎么查看原因相关的资料

热点内容
适配平板的app是什么意思 浏览:45
java写一个方法 浏览:682
中原大学php视频教程 浏览:501
冲压模具设计pdf 浏览:690
程序员考哪些证 浏览:233
李世民命令薛收为鱼作赋 浏览:776
阿里云服务器2核8g内存 浏览:157
phpyii框架开发文档 浏览:994
视频监控管理服务器有什么用 浏览:182
mysqlphp变量 浏览:289
云开发小程序源码视频激励 浏览:819
python的pandas库怎么导入 浏览:722
计算机现在常用的加密方法 浏览:516
工资满月算法 浏览:340
linux开启80端口命令 浏览:116
php银行支付 浏览:816
java内存模型与线程 浏览:73
辽宁存储服务器云空间 浏览:849
程序员看能力还是看学历 浏览:28
查看压缩包格式 浏览:868