Linux Deploy NMON to monitor DB Server


1 Download nmon tools  (from sourceforge.net/projects/nmon/files/) and analyze tool nmon_analyser

nmon_x86_64_rhel5        --for all rhel5 version

2 make relative directory

cd /home/
mkdir -p _nmon/_results


3 Upload nmon_x86_64_rhel5  to /home/_nmon/

By tools  ftp/filezilla/winscp

4 cp nmon_x86_64_rhel5 to /usr/local/bin/

cp nmon_x86_64_rhel5 /usr/local/bin/nmon

5 NMON test
#nmon

6 Get ftp server ready

Use FileZilla Server FTP server in local PC

7 Edit nmon.sh

#!/bin/bash
PATH=$PATH:$HOME/bin

export PATH


HOSTNAME=`hostname`
INSTNAME=`ps -ef|grep pmon|awk '{print $8}'|grep ora|cut -d_ -f3`
DBNAME=`cat /etc/oratab |grep -v ASM|grep -v ^#|grep ":"|awk -F: '{print $1}'`
DATE=`date "+%Y%m%d"`
ARCHIVEDATE=`expr $DATE - 5`
REPORTDIR=/home/_nmon/_results
NMONFILE=${REPORTDIR}/${HOSTNAME}_${INSTNAME}_${DATE}.nmon
ARCHIVEDIR=${REPORTDIR}/${ARCHIVEDATE}
FTPFILE=${REPORTDIR}/ftp_${DATE}.txt


/usr/local/bin/nmon -s 60 -c 600 -t -F ${NMONFILE} > /dev/null
chmod 666 ${NMONFILE}


mkdir ${ARCHIVEDIR}  
find  ${REPORTDIR}/*.nmon ! -mtime -5 -exec mv {} ${ARCHIVEDIR} \;

echo "user shawn 123456" >${FTPFILE}
echo "bin" >>${FTPFILE}
echo "prompt" >>${FTPFILE}
echo "cd $DBNAME" >>${FTPFILE}
echo "mput *" >>${FTPFILE}
echo "ls" >>${FTPFILE}
echo "bye" >>${FTPFILE}


cd ${ARCHIVEDIR}
ftp -n 10.148.19.195 < ${FTPFILE}   

cd ${REPORTDIR}
rm -rf ${ARCHIVEDIR}



7 Enable crontab  --use nmon.sh

00 00 * * *  /home/_nmon/nmon.sh >/dev/null 2>&1
or
00 08 * * 1-5 /home/_nmon/nmon.sh >/dev/null 2>&1

请使用浏览器的分享功能分享到微信等