当前位置:Gxlcms > mysql > 针对Oracle用户的Linux高级命令详解之资源管理篇

针对Oracle用户的Linux高级命令详解之资源管理篇

时间:2021-07-01 10:21:17 帮助过:18人阅读

Oracle数据库中的I/O瓶颈可能会造成严重的问题,与性能问题不同,慢速I/O可能导致控制文件写入速度缓慢,这会导致等待获取控制文

⑴ free

一个常见的问题是:

我的应用程序,服务器,用户以及系统进程等正在使用多少内存? 或者

现在多少内存可用?如果正在运行的进程使用的内存大于可用RAM,则需要将这些进程移到交换区

因此,一个补充的问题是:

正在使用多少交换区空间?

free命令将回答所有这些问题。而且,,一个非常有用的选项-m可以显示可用内存(以MB为单位)

[root@Think ~]# free -m
total used free shared buffers cached
Mem: 1011 991 19 0 59 661
-/+ buffers/cache: 270 740
Swap: 0 0 0

以上输出显示系统具有1011MB的RAM,已使用991MB,还有19MB内存可用

第二行显示在物理内存中缓冲区和缓存大小的更改

第三行显示交换分区利用情况

要以KB或GB为单位显示以上内容,请将-m选项分别替换为-k或-g。使用-b选项将以字节为单位

[root@Think ~]# free -b
total used free shared buffers cached
Mem: 1060110336 1039556608 20553728 0 62877696 692731904
-/+ buffers/cache: 283947008 776163328
Swap: 0 0 0

-t选项在输出底部显示总数(物理内存和交换分区的总和):

[root@Think ~]# free -m -t
total used free shared buffers cached
Mem: 1011 991 19 0 60 660
-/+ buffers/cache: 270 740
Swap: 0 0 0
Total: 1011 991 19

尽管free不显示百分比,但是我们可以提取并格式化输出的特定部分

例如:已用内存占总数的百分比

[root@Think ~]# free -m | grep Mem | awk '{print ($3 / $2)*100}'
97.9228

这个值非常重要,您可能希望在可用内存的百分比低于特定阀值时触发一个警报

同样,要发现已使用交换分区空间的百分比,您可以:

[root@Think ~]# free -m | grep -i Swap | awk '{print ($3 / $2)*100}'

可以使用free查看应用程序施加的内存负载

例如,启动备份应用程序之前检查可用内存,启动之后立即检查可用内存

两者之差就是备份应用程序消耗的内存

linux

人气教程排行