数据库性能监控常用的Linux命令详解

在实际工作中,查看数据库性能,服务器性能也是必不可少的。
以下最好掌握的一些Linux命令:

  • top
    top命令的输出如下
    数据库性能监控常用的Linux命令详解_第1张图片
  • 第一行:系统运行时间和平均负载

当前时间、系统已运行时间、当前登录用户的数量、最近5、10、15分钟内的平均负载

  • 第二行:任务

任务的总数、运行中(running)的任务、休眠(sleeping)中的任务、停止(stopped)的任务、僵尸状态(zombie)的任务

  • 第三行:cpu状态

%us- user 用户空间占用CPU百分比、
%sy-system 内核空间占用CPU百分比、
%ni -niced用户进程空间内改变过优先级的进程占用CPU百分比、
%id- idle空闲CPU百分比、
%wa -wait等待输入输出(I/O)的CPU时间百分比 、
%hi-指的是cpu处理硬件中断的时间、
%si指的是cpu处理软中断的时间 、
%st用于有虚拟cpu的情况,用来指示被虚拟机偷掉的cpu时间。
通常id%值可以反映一个系统cpu的闲忙程度。

  • 第四行:内存

total 物理内存总量、 used 使用的物理内存总量、free 空闲内存总量、 buffers 用作内核缓存的内存量。

  • 第五行:swap

total 交换区总量、 used 使用的交换区总量、free 空闲交换区总量、 cached 缓冲的交换区总量。

buffers和cached的区别需要说明一下,buffers指的是块设备的读写缓冲区,cached指的是文件系统本身的页面缓存。它们都是linux操作系统底层的机制,目的就是为了加速对磁盘的访问。

  • 第六行

PID(进程号)、
USER(运行用户)、PR(优先级)、NI(任务nice值)、VIRT(虚拟内存用量)VIRT=SWAP+RES 、RES(物理内存用量)、SHR(共享内存用量)、S(进程状态)、%CPU(CPU占用比)、%MEM(物理内存占用比)、TIME+(累计CPU占用时间)、 COMMAND 命令名/命令行。
其中:
S这个是进程的状态。它有以下不同的值:D - 不可中断的睡眠态。
R – 运行态
S – 睡眠态
T – 被跟踪或已停止
Z – 僵尸态

可以看到COMMAND里面标出,
Postgres进程,cup使用最高的pid,
在数据库性能监控时,常用的是
第三行cpu使用,一般看id即空闲cpu的百分比

你可能感兴趣的:(Postgresql性能监控)