Oracle进程记录
1.僵尸进程
问题背景:
aix环境,收到监控告警,僵尸进程超阈值,疑似进行备份会导致产生大量的僵尸进程
查看僵尸进程:
ps -ef |grep defunct
一般僵尸进程会在备份完毕后自行消失,若可以采取措施(前提为系统init初始化产生的僵尸进程则可处理)
cp /etc/inttab /etc/inittab.bak
rmitab welcome
telinit q
ps -ef|grep welcome (to find the
‘welcome’ pid#)
kill #pid
telinit q
inittab修改详解
{
修改 /etc/inittab 文件需要特定命令:
(1)mkitab:将记录添加到 /etc/inittab 文件。
(2)lsitab:列出 /etc/inittab 文件中的记录。
(3)chitab:更改 /etc/inittab 文件中的记录。
(4)rmitab:删除 /etc/inittab 文件中的记录。
}
inittab读取命令详解
{
TELINIT
/sbin/telinit 是一个到 /sbin/init 的软链接。它用一个单字符参数来通知 init 执行相应的操作。下面是相关的参数:
0,1,2,3,4,5 或 6
通知 init 将运行级别切换到指定的运行级别
a,b,c
告诉 init 只运行那些 /etc/inittab 文件中运行级别是 a,b 或 c 的记录
Q 或 q
通知 init 重新检测 /etc/inittab 文件
S 或 s
通知 init 将运行级别切换到单用户模式下
U 或 u
通知 init 自动重启(保留状态),此操作不会对文件/etc/inittab 进行重新检测。执行此操作时,运行级别必须处在 Ss12345 之一,否则,该请求将被忽略
telinit 还可以告诉 init 两次发送 SIGTERM 和 SIGKILL 信号的时间间隔。默认值是 5 秒,你可以通过使用 -t sec 的选项来修改。
telinit 只能由具有恰当权限的用户执行。
init 通过检查自己的 进程号 来判断自己是 init 还是 telinit ;真的 init 的进程号永远都是 1。从这一点来看,我们在调用 telinit 时也可以只使用 init 来少敲几个键.
}
2.资源占用
diag
问题背景:
监控内存告警,交换分区超过阈值,查看后发现diag,dia0进程占用过大
经大佬指点,为数据库11g bug,DIAG DIA0 占用内存会缓慢增长 最后把内存耗光
使用命令,查看占用大小
svmon -G -O unit=GB
topas
筛选进程
ps aux | sort -k3,3nr | head -n 10
ps aux|head -1;ps aux |sort -rn -k3|head -10
查出进程后kill,问题暂时解决
oraagent
问题背景:
查看cpu使用率极高,大佬检查后发现oraagent进程疑似卡住,单个进程使用cpu负载极高,达到110%-170%
使用命令查出
ps aux|sort -k3,3nr |head -n 10
操作
srvctl stop cvu
srvctl start cvu
若无效果,可kill进程,进程会自动拉起
服务器托管,北京服务器托管,服务器租用 http://www.fwqtg.net
机房租用,北京机房租用,IDC机房托管, http://www.fwqtg.net
相关推荐: 《现代JavaScript高级教程》Cookie, Session, SessionStorage, LocalStorage
点击在线阅读,体验更好 链接 现代JavaScript高级小册 链接 深入浅出Dart 链接 现代TypeScript高级小册 链接 详解Cookie, Session, SessionStorage, LocalStorage 引言 在Web开发中,数据的存…