标签云
asm恢复 bbed bootstrap$ dul kcbzib_kcrsds_1 kccpb_sanity_check_2 kcratr_nab_less_than_odr MySQL恢复 obet ORA-00312 ORA-00704 ORA-00742 ORA-01110 ORA-01200 ORA-01555 ORA-01578 ORA-01595 ORA-600 2662 ORA-600 2663 ORA-600 3020 ORA-600 4000 ORA-600 4137 ORA-600 4193 ORA-600 4194 ORA-600 16703 ORA-600 kcbzib_kcrsds_1 ORA-600 KCLCHKBLK_4 ORA-600 kcratr_nab_less_than_odr ORA-15042 ORA-15196 ORACLE 12C oracle dul ORACLE PATCH Oracle Recovery Tools oracle加密恢复 oracle勒索 oracle勒索恢复 oracle异常恢复 ORACLE恢复 Oracle 恢复 ORACLE数据库恢复 oracle碎片 OSD-04016 YOUR FILES ARE ENCRYPTED 比特币加密文章分类
- MongoDB (1)
- MongoDB恢复 (1)
- Others (2)
- 中间件 (2)
- WebLogic (2)
- 操作系统 (112)
- 数据库 (1,884)
- DB2 (22)
- MySQL (82)
- Oracle (1,709)
- Data Guard (53)
- EXADATA (8)
- GoldenGate (24)
- ORA-xxxxx (168)
- ORACLE 12C (72)
- ORACLE 18C (6)
- ORACLE 19C (15)
- ORACLE 21C (3)
- Oracle 23ai (8)
- Oracle ASM (73)
- Oracle Bug (8)
- Oracle RAC (56)
- Oracle 安全 (6)
- Oracle 开发 (28)
- Oracle 监听 (29)
- Oracle备份恢复 (662)
- Oracle安装升级 (108)
- Oracle性能优化 (62)
- 专题索引 (5)
- 勒索恢复 (91)
- PostgreSQL (37)
- pdu工具 (7)
- PostgreSQL恢复 (13)
- SQL Server (34)
- SQL Server恢复 (14)
- TimesTen (7)
- 达梦数据库 (5)
- 达梦恢复 (3)
- 生活娱乐 (2)
- 至理名言 (11)
- 虚拟化 (2)
- VMware (2)
- 软件开发 (51)
- Asp.Net (9)
- JavaScript (12)
- PHP (2)
- 小工具 (34)
- MongoDB (1)
-
最近发表
- 记录19c ASM磁盘掉线触发ORA-59048故障处理
- aix平台Oracle数据库由于断电无法启动故障处理
- 断电引起ORA-600 3005故障处理
- 记录一次云存储资源到期之后引起的数据库恢复
- Firebird 损坏数据库数据抢救工具—firebirdext
- Oracle 19c 202610补丁(RUs+OJVM)-19.33
- 由于con$.con#值达到极限,触发数据库增加约束报ORA-600 12807错误
- MongoDB 离线提取工具—mongoext
- .bres勒索病毒加密数据库dmp文件可恢复
- ORA-600 krsm_mrp_rebuild_lf_list.lno_mismatch
- 记录一次0丢失的ORA-00354: 损坏重做日志块标头故障恢复
- 不当数据库恢复操作导致一个月数据丢失
- obet快速修复oracle 位图损坏块
- 不太常见的10.2.0.1的oracle redo损坏恢复
- obet forcecopy功能抢救硬件故障中的数据文件
- kcratr_nab_less_than_odr和system坏块故障处理
- 通过obet 恢复system坏块,打开数据库
- obet dbv功能完整说明
- 分享一例运行在aix上的sap系统数据库恢复过程
- OBET-Oracle Block Editor Tool使用说明
分类目录归档:操作系统
shell处理alert日志
每天都检查oracle日志,所以写了一个比较完善的shell,让其自动处理,在运行程序之前,需要在该脚本目录下新建tmp目录
#!/usr/bin/ksh
export LANG=en
#临时目录
tmp_dest=$HOME/check/tmp
#用户名
username=username
#密码
password=password
cd $tmp_dest
sqlplus -s $username/$password<<XFF>/dev/null
set echo on
spool sqlplus.txt
col name format a20
col value format a55
select name,value from v\$parameter where name='background_dump_dest';
spool off
exit
XFF
alert_path_num=$(grep -n "background_dump_dest" $tmp_dest/sqlplus.txt |awk -F":" '{print $1}')
alert_path=$(cat $tmp_dest/sqlplus.txt |sed -n "${alert_path_num}p" | awk -F" " '{print $2}')
first_day=`cat $tmp_dest/first_day.tmp`
d_day=$(date +%e)
if [ $d_day -lt 10 ]
then
###########注意:以下两种方式选择其一###################
#部分系统出现alert日志例如:Tue Aug 7 07:44:59 2012
last_day=$(date +%a)' '$(date +%b)'.*'$d_day'.*'$(date +%Y)
#部分系统出现alert日志例如:Thu Jun 07 13:56:18 2012
n_day=`echo $d_day | awk 'gsub(/^ *| *$/,"")'`
last_day=$(date +%a)' '$(date +%b)'.*0'$n_day'.*'$(date +%Y)
else
last_day=$(date|cut -c 1-10).*$(date +%Y)
fi
echo $last_day > $tmp_dest/first_day.tmp
first_num=$(grep -n "$first_day" $alert_path/alert_$ORACLE_SID.log |head -1|awk -F":" '{print $1}')
if [ -z "$first_num" ]
then
first_num=1
fi
#修改$last_day为'.*',表示alert日志结尾
last_num=$(grep -n ".*" $alert_path/alert_$ORACLE_SID.log |tail -1|awk -F":" '{print $1}')
point=1
export=$point
echo "########################## checking alert_log start $first_day ########################## "
sed -n "${first_num},${last_num}p" $alert_path/alert_$ORACLE_SID.log > $tmp_dest/trunc_alert
cat $tmp_dest/trunc_alert|grep ORA-|while read line
do
line=$(echo "$line"|sed -e 's/\[/\\[/g;s/\]/\\]/g')
time=$(grep -n "$line" $tmp_dest/trunc_alert | awk -F':' '{print $1}'|wc -l)
if [ "$time" -ge 1 ]
then
num=$(grep -n "$line" $tmp_dest/trunc_alert|awk -F':' '{print $1}'|tail -1)
#echo $num
front_num=$((num-1))
back_num=$((num+9))
echo "++++++++++++++++++$point++++++++++++++++++++"
sed -n "${front_num},${back_num}p" $tmp_dest/trunc_alert
echo "++++++++++++++++++$point-End++++++++++++++++"
point=$((point+1))
flag=1
else
if [ -z "$time" ]
then
flag=0
fi
fi
done
#rm $tmp_dest/trunc_alert
#rm $tmp_dest/sqlplus.txt
if [ " $flag " -eq 0 ]
then
echo "No errors in $first_day !"
fi
echo "########################## checking alert_log end $last_day ########################## "
检查结果
########################## checking alert_log start Fri Jan 27.*2012 ########################## ++++++++++++++++++1++++++++++++++++++++ Current log# 3 seq# 918 mem# 0: /opt/oracle/oradata/orcl/mcrm/redo03.log Tue Jan 31 22:00:22 2012 Errors in file /opt/oracle/admin/mcrm/bdump/mcrm_j001_23329.trc: ORA-01114: IO error writing block to file 201 (block # 550944) ORA-27072: File I/O error Linux-x86_64 Error: 28: No space left on device Additional information: 4 Additional information: 550944 Additional information: -1 ORA-01114: IO error writing block to file 201 (block # 550922) ORA-27072: File I/O error Additional information: 4 Additional information: 550922 ++++++++++++++++++1-End++++++++++++++++ ++++++++++++++++++2++++++++++++++++++++ Additional information: 550944 Additional information: -1 ORA-01114: IO error writing block to file 201 (block # 550922) ORA-27072: File I/O error Additional information: 4 Additional information: 550922 Additional information: 114688 Wed Feb 1 07:24:02 2012 Thread 1 advanced to log sequence 919 (LGWR switch) Current log# 1 seq# 919 mem# 0: /opt/oracle/oradata/orcl/mcrm/redo01.log Wed Feb 1 07:24:02 2012 Errors in file /opt/oracle/admin/mcrm/bdump/mcrm_arc1_3624.trc: ORA-19504: failed to create file "/opt/oracle/oradata/archivelog/1_918_741262746.dbf" ++++++++++++++++++2-End++++++++++++++++ ########################## checking alert_log end Sun Feb 12.*2012##########################
发表在 Linux
评论关闭
nmon使用说明
Nmon 工具是 IBM 提供的免费的监控 AIX 系统与 Linux 系统资源的工具。该工具可实时监控系统性能,也可以将服务器的系统资源耗用情况收集起来并输出一个特定的文件,并可利用 excel 分析工具进行数据的统计分析,非常利用 UNIX 或者 Linux 系统的性能数据分析。
1.下载地址
nmon官网
NMON_Analyser官网
本地下载nmon
本地下载nmon_analyser
2.安装nmon
在压缩包中找到相应的版本,上传至服务器,然后授予执行权限
3.主要操作说明
+-HELP---------most-keys-toggle-on/off------------------------------------------+ |h = Help information q = Quit nmon 0 = reset peak counts | |+ = double refresh time - = half refresh r = ResourcesCPU/HW/MHz/AIX | |c = CPU by processor C=upto 128 CPUs p = LPAR Stats (if LPAR) | |l = CPU avg longer term k = Kernel Internal # = PhysicalCPU if SPLPAR | |m = Memory & Paging M = Multiple Page Sizes P = Paging Space | |d = DiskI/O Graphs D = DiskIO +Service times o = Disks %Busy Map | |a = Disk Adapter e = ESS vpath stats V = Volume Group stats | |^ = FC Adapter (fcstat) O = VIOS SEA (entstat) v = Verbose=OK/Warn/Danger | |n = Network stats N=NFS stats (NN for v4) j = JFS Usage stats | |A = Async I/O Servers w = see AIX wait procs "="= Net/Disk KB<-->MB | |b = black&white mode g = User-Defined-Disk-Groups (see cmdline -g) | |t = Top-Process ---> 1=basic 2=CPU-Use 3=CPU(default) 4=Size 5=Disk-I/O | |u = Top+cmd arguments U = Top+WLM Classes . = only busy disks & procs | |W = WLM Section S = WLM SubClasses) |
4.实时监控结果
1)监控内存使用情况
| Memory -----------------------------------------------------------------------| | Physical PageSpace | pages/sec In Out | FileSystemCache | |% Used 93.8% 34.3% | to Paging Space 0.0 0.0 | (numperm) 44.3% | |% Free 6.2% 65.7% | to File System 0.0 257.9 | Process 18.2% | |MB Used 1786.0MB 175.8MB | Page Scans 0.0 | System 31.4% | |MB Free 118.0MB 336.2MB | Page Cycles 0.0 | Free 6.2% | |Total(MB) 1904.0MB 512.0MB | Page Steals 0.0 | ------| | | Page Faults 279.9 | Total 100.0% | |------------------------------------------------------------ | numclient 44.3% | |Min/Maxperm 361MB( 19%) 1443MB( 76%) <--% of RAM | maxclient 75.8% | |Min/Maxfree 960 1088 Total Virtual 2.4GB | User 58.4% | |Min/Maxpgahead 2 8 Accessed Virtual 0.9GB 40.1%| Pinned 28.6% | |-------------------------------------------------------------------------------|
2)监控cpu使用情况
| 0----------25-----------50----------75----------100 |CPU User% Sys% Wait% Idle%| | | | | | 0 0.0 0.0 0.0 100.0|> | | 1 0.0 0.0 0.0 100.0|> | | 2 0.0 0.0 0.0 100.0|> | | 3 0.0 0.0 0.0 100.0|> | |Physical Averages +-----------|------------|-----------|------------+ |All 0.2 2.5 0.7 96.6|> | | +-----------|------------|-----------|------------+
3)监控进程状态
| Top-Processes-(147) -----Mode=3 [1=Basic 2=CPU 3=Perf 4=Size 5=I/O 6=Cmds]-----------------------------| | PID %CPU Size Res Res Res Char RAM Paging Command | | Used KB Set Text Data I/O Use io other repage | | 1908868 0.8 30508 29764 132 29632 2 2% 0 3 0 secldapclntd | | 2306196 0.7 512 512 0 512 0 0% 1 8 0 trclogio | | 2732116 0.6 2520 0 0 0 0 0% 0 33 0 <defunct Zombie>| | 340036 0.2 1416 296 72 224 0 0% 0 0 0 dtgreet |
5.监控一段时间性能
-f spreadsheet output format [note: default -s300 -c288] optional -s <seconds> between refreshing the screen [default 2] -c <number> of refreshes [default millions] -t spreadsheet includes top processes 具体信息nmon -h
例如:nmon -f -t -s 30 -c 120
-s 30:每30秒进行一次数据采集
-c 120:一共采集120次
6.分析数据
打开nmon analyser,设置宏的安全级别是低 ,之后点击 Analyser NMON data 按钮 输入文件 保存成excel格式即可。

查看Aix进程占用内存大小
内存从大到小排序
-bash-3.00$ ps aux | head -1 ; ps aux | sort -rn +3 | head -10 USER PID %CPU %MEM SZ RSS TTY STAT STIME TIME COMMAND root 1908868 0.1 2.0 30508 29724 - A Dec 21 235:34 /usr/sbin/secld zhldang 2728188 0.0 0.0 1208 1288 pts/15 A 11:20:20 0:00 -bash zhldang 1421376 0.0 0.0 2036 1056 - A 11:20:15 0:00 sshd: zhldang@p zerbo625 2482224 0.0 0.0 1164 1244 pts/24 A 11:04:35 0:00 -bash zerbo625 1523730 0.0 0.0 1796 1036 - A 11:04:29 0:00 sshd: zerbo625@ yxq198sm 2429092 0.0 0.0 152 156 - A 12:24:48 0:00 sleep 30 yxq198sm 1327254 0.0 0.0 1600 1872 - A Feb 01 0:06 /usr/bin/bsh /u yanmotia 1274070 0.0 0.0 1164 768 pts/22 A Dec 23 0:00 -bash xinximai 2658402 0.0 0.0 1156 760 pts/83 A Dec 28 0:00 -bash xifengke 2330668 0.0 0.0 1160 756 pts/80 A Dec 05 0:00 -bash
内存从大到小排序(详细执行命令)
-bash-3.00$ ps -ealf | head -1 ; ps -ealf | sort -rn +9 | head -10
F S UID PID PPID C PRI NI ADDR SZ WCHAN STIME TTY TIME CMD
240001 A root 188582 1 0 60 20 2823c400 36708 * Jan 03 - 676:39 /usr/sbin/secldapclntd
240001 A root 1908868 1 0 60 22 6648400 30508 * Dec 21 - 235:40 /usr/sbin/secldapclntd
240001 A root 331840 86176 0 60 20 205f8400 4088 Sep 15 - 11:04 /usr/lpp/X11/bin/X -D /usr/lib/X11//rgb -T -force :0 -auth /var/dt/A:0-0xukaa
240001 A root 2216054 233648 0 60 20 142a400 3992 f100060002c9e8c8 11:19:59 - 0:00 sshd: zhldang [priv]
240001 A root 1515620 233648 0 60 20 2075f400 3992 f100060003bb0cc8 12:21:48 - 0:00 sshd: undeadbird [priv]
240001 A root 2719848 233648 0 60 20 916a400 3988 f100060002b068c8 13:07:55 - 0:00 sshd: wangyh0313 [priv]
240001 A root 2003106 233648 0 60 20 3428400 3876 f1000600038f94c8 11:02:58 - 0:00 sshd: intrepid [priv]
240001 A root 2560234 233648 0 60 20 44a8400 3816 f1000600018264c8 11:01:54 - 0:00 sshd: xifenfei [priv]
240001 A root 2846944 233648 0 60 20 22c7b400 3784 f100060003b050c8 11:04:12 - 0:00 sshd: zerbo625 [priv]
200001 A undeadbi 2220232 1007670 0 60 20 2355f400 3104 f100060001c2c878 13:03:08 pts/9 0:00 /usr/bin/smitty
查找某个进程使用内存
-bash-3.00$ ps aux | head -1 ; ps aux | grep xifenfei USER PID %CPU %MEM SZ RSS TTY STAT STIME TIME COMMAND xifenfei 2494532 0.0 0.0 1836 1044 - A 11:02:05 0:00 sshd: xifenfei@ xifenfei 2666546 0.0 0.0 1148 1228 pts/20 A 11:02:10 0:00 -bash root 2560234 0.0 0.0 3816 3024 - A 11:01:54 0:00 sshd: xifenfei xifenfei 2220230 0.0 0.0 912 940 pts/20 A 13:03:06 0:00 ps aux xifenfei 1310908 0.0 0.0 228 240 pts/20 A 13:03:06 0:00 grep xifenfei
查找某个进程使用内存(详细执行命令)
-bash-3.00$ ps -ealf | head -1 ;ps -ealf|grep xifenfei
F S UID PID PPID C PRI NI ADDR SZ WCHAN STIME TTY TIME CMD
40001 A xifenfei 2494532 2560234 0 60 20 37575400 1836 11:02:05 - 0:00 sshd: xifenfei@pts/20
200001 A xifenfei 2510946 2666546 1 60 20 14045400 960 12:57:25 pts/20 0:00 ps -ealf
200001 A xifenfei 2543730 2666546 0 60 20 10cc6400 228 f100010017976ca0 12:57:25 pts/20 0:00 grep xifenfei
240001 A root 2560234 233648 0 60 20 44a8400 3816 f1000600018264c8 11:01:54 - 0:00 sshd: xifenfei [priv]
发表在 AIX
评论关闭

加我微信(17813235971)
加我QQ(107644445)

