CTOCIO IT专家网

天极传媒 比特网 | 天极网 | IT专家网 | IT商网 | 52PK游戏网 | 手机天极 | IT分众 |
IT专家网搜索

数据库 | Oracle | DB2 | SQL Server | MySQL | 商业智能 | BI | DBA | Sybase| SQL Server 2008

您现在的位置: IT专家网 > 数据库子站 > 数据库技巧

AIX系统CPU性能评估

作者: Peak Wong,  出处:IT专家网, 责任编辑: 李书琴, 
2008-05-08 17:21
  本文对cpu性能的命令作了详细介绍,并给出了对于系统cpu监控的建议。

  5、ps

  这个命令使用本身也比较复杂,在这里只介绍如何查看cpu占用最高的进程。使用举例如下:

#ps aux | head -25
USER        PID %CPU %MEM   SZ  RSS    TTY STAT    STIME  TIME COMMAND
root      17214  3.1  0.0   40   40      - A      Jul 04 25578:42 wait
root      16946  3.1  0.0   40   40      - A      Jul 04 25415:54 wait
root      16678  3.1  0.0   40   40      - A      Jul 04 25377:03 wait
root      53274  3.1  0.0   40   40      - A      Jul 04 25170:12 wait
root        286  3.1  0.0   40   40      - A      Jul 04 25144:00 wait
root       8196  3.0  0.0   40   40      - A      Jul 04 25082:32 wait
root        822  3.0  0.0   40   40      - A      Jul 04 25072:25 wait
root        554  3.0  0.0   40   40      - A      Jul 04 25034:14 wait
root      20776  2.7  0.0   40   40      - A      Jul 04 22181:27 wait
root      57372  2.7  0.0   40   40      - A      Jul 04 22118:00 wait
root      49176  2.7  0.0   40   40      - A      Jul 04 22102:02 wait
root      21044  2.7  0.0   40   40      - A      Jul 04 22077:18 wait
root      12848  2.7  0.0   40   40      - A      Jul 04 22036:44 wait
root      21312  2.7  0.0   40   40      - A      Jul 04 21998:53 wait
root      12580  2.7  0.0   40   40      - A      Jul 04 21967:17 wait
root      13116  2.7  0.0   40   40      - A      Jul 04 21865:51 wait
oracle   344612  0.3  0.0 56372 33852      - A      Jul 04 2707:30 ora_j000_ora92
oracle   430408  0.3  0.0 55916 33396      - A      Jul 04 2266:20 ora_j001_ora92
oracle   365092  0.2  0.0 56184 33664      - A      Jul 04 1765:58 ora_j002_ora92
oracle   442430  0.2  0.0 56092 33572      - A      Jul 04 1426:40 ora_j003_ora92
oracle   385606  0.1  0.0 55984 33464      - A      Jul 05 1159:17 ora_j004_ora92
oracle   413856  0.1  0.0 50520 28000      - A      Jul 23 543:31 oracleora92 (LOC
oracle   143668  0.1  0.0 50528 28008      - A      Jul 13 833:21 oracleora92 (LOC
oracle   369230  0.1  0.0 56600 34080      - A      Jul 05 806:36 ora_j005_ora92

  在这个输出结果中,排在前面的是16个root用户的wait进程,这其实是CPU空闲的时候运行的空闲进程,之前已作说明。

  所以CPU最高的几个进程其实是下面的ORACLE用户的ora_j00*进程,这是ORACLE的job进程。在这里,这些进程的开销很小。如果ORACLE的进程开销比较大,我们可以用如下的方法来查询具体的进程在干什么事情,例如我们要查询进程ora_j000_ora92,PID=344612,可以使用下面的方法:

$su – oracle
SQL>sqlplus “/as sysdba”
SQL>oradebug setospid 344612
SQL>oradebug event 10046 trace name context forever, level 8
SQL>oradebug tracefile_name –这个命令我们获得输出文件的绝对路径和文件名
SQL>oradebug event 10046 trace name context off
$tkprof /opt/oracle/app/oracle/admin/ora92/bdump/ora92_j000_344612.trc tracepid.txt
$more tracepid.txt

  在tracepid.txt中,我们就可以看到这个进程中具体运行的语句、过程等,以及所有的SQL的cpu消耗、物理读、逻辑读、执行计划等信息。

  另外,我们也可以执行下面的语句查看进程具体运行的SQL语句的文本:

SELECT /*+ ORDERED */ sql_text FROM v$sqltext a
   WHERE (a.hash_value, a.address) IN (
            SELECT DECODE (sql_hash_value,0, prev_hash_value,sql_hash_value),
                   DECODE (sql_hash_value,0, prev_sql_addr, sql_address)
              FROM v$session b
             WHERE b.paddr = (SELECT addr
                                FROM v$process c
                               WHERE c.spid = '&pid'))
ORDER BY piece ASC

  • 第1页:vmstat
  • 第2页:sar
  • 第3页:iostat
  • 第4页:tprof
  • 第5页:ps
  • 第6页:解决CPU占用的惩罚机制nice和renice
  • 第7页:小结
  • 共7页。 9 1 2 3 4 5 6 7 :

    网友评论

    笔名 
    请您注意:遵守国家有关法律、法规,尊重网上道德,承担一切因您的行为而直接或间接引起的法律责任。    IT专家网友拥有管理笔名和留言的一切权利。
    • 周排行榜
    • 月排行榜

    邮件订阅


        
    天极服务 | 关于我们 | 网站律师 | 加入我们 | 联系我们 | 广告业务 | 友情链接 | 我要挑错
    All Rights Reserved, Copyright 2004-2008, Ctocio.com.cn
    渝ICP证B2-20030003号 如有意见请与我们联系 powered by 天极内容管理平台CMS4i