一台服务器设备,反复重启,每天重启数次. 一: 原因分析及初步排异. 1.  硬件,内存主板,一一更换,甚至除了硬盘将整台机器都换掉了,依然重启. 2.  排除电源问题,换了电源线,换了插座,还是重启. 3.  那么接下来,还有三种可能: A.内核问题,内核crash.(redhat的稳定性还是十分让人信赖的,这种可能性不高) B.硬盘或文件系统故障.本质上,这样会导致内核crash. C.程序自主reboot.(我们自己的程序reboot,或进了黑客放了reboot脚本.好无聊的黑客....)…
Oracle Real Application Clusters(Oracle RAC),相对于Oracle单实例来说部署安装和维护都增加了难度,尤其在日常的维护和故障处理过程中,各种日志的查看更加重要,本文主要对Oracle 11g 集群下的目录结构和路径进行介绍和说明. 以下是集群目录下日志结构,以及对应目录的功能说明,对排查问题尤其重要. [grid@dbrac1 dbrac1]$ tree -d . ├── acfslog ├── acfsrepl ├── acfsreplroot ├─…
最近程序在跑着没几天,突然访问不了,查看应用进程都还在.只有数据库的进程down掉了.于是找到日志文件看到如下错误 -- :: [Note] InnoDB: Initializing buffer pool, size = 512.0M InnoDB: mmap( bytes) failed; errno -- :: [ERROR] InnoDB: Cannot allocate memory for the buffer pool -- :: [ERROR] Plugin 'InnoDB' i…
原文:SQL Server 2008性能故障排查(四)--TempDB 接着上一章:I/O TempDB: TempDB是一个全局数据库,存储内部和用户对象还有零食表.对象.在SQLServer操作过程中产生的存储过程等数据.在一个SQLServer实例中,只有一个TempDB.所以容易成为性能和磁盘空间瓶颈.TempDB可能因为空间可用程度和过量的DDL和DML操作而变得超负荷.这可能导致不相关的应用运行缓慢甚至失败. 常见的TempDB问题如下: l  TempDB空间超支. l  因为Te…
原文:SQL Server 2008性能故障排查(三)--I/O 接着上一章:CPU瓶颈 I/O瓶颈(I/O Bottlenecks): SQLServer的性能严重依赖I/O子系统.除非你的数据库完全加载到物理内存中,否则SQLServer会不断地把数据库文件从缓存池中搬进搬出,这会引起大量的I/O传输.同样地,日志记录在事务被声明为已提交前必须写入磁盘.最后,SQLServer基于许多原因使用tempdb,比如存储临时结果.排序和保持行版本.所以一个好的I/O子系统是SQLServer性能关…
作为linux运维,多多少少会碰见这样那样的问题或故障,从中总结经验,查找问题,汇总并分析故障的原因,这是一个Linux运维工程师良好的习惯.每一次技术的突破,都经历着苦闷,伴随着快乐,可我们还是执着的继续努力,从中也积累了更多的经验,这就是实践给予我们的丰厚回报. 下面汇总了我做项目过程可能出现的故障及解决方法,看看是否与你有共鸣,并对你有帮助? 第一:常见问题解决集锦   1.shell脚本不执行    问题:某天研发某同事找我说帮他看看他写的shell脚本,死活不执行,报错.我看了下,脚本…
1.回顾: 某在线主机深夜连续接到告警系统的disk Used 超限告警. 登陆主机查看却遇到了困惑:在检查磁盘使用量 df –h 出来的磁盘使用量确实和告警信息一样,已经被100%占用,但是查看目录大小 du 时,却显示实际目录大小并非这样,而是有很大空闲空间. 如图:磁盘用量 df –h 结果为100%Used, 目录实际总大小 du –h –max-depth=1,显示总目录大小为60k,几乎可以忽略的使用比例. [知识准备] [linux] lsof 命令了解: lsof(list op…
作为linux运维,多多少少会碰见这样那样的问题或故障,从中总结经验,查找问题,汇总并分析故障的原因,这是一个Linux运维工程师良好的习惯.每一次技术的突破,都经历着苦闷,伴随着快乐,可我们还是执着的继续努力,从中也积累了更多的经验,这就是实践给予我们的丰厚回报. 下面汇总了我做项目过程可能出现的故障及解决方法,看看是否与你有共鸣,并对你有帮助? 第一:常见问题解决集锦   1.shell脚本不执行    问题:某天研发某同事找我说帮他看看他写的shell脚本,死活不执行,报错.我看了下,脚本…
目录 一.Linux 内存和cpu 网络 磁盘 /proc文件系统 二.JVM Java堆和垃圾收集器 gc日志分析 JVMTI介绍 Attach机制 java自带工具 三.三方工具 jprofile arthas (类似btrace的工具) gceasy 四.实际案例 连接泄漏 String拼接导致内存溢出 堆内存占用过大 CPU占用高问题 aerospike线程阻塞导致内存溢出问题 问题 整体思路:全局观,先从系统层面入手,大致定位方向(内存,cpu,磁盘,网络),然后再去分析具体的进程.…
使用strace工具故障排查的5种简单方法 本文源自5 simple ways to troubleshoot using strace strace 是一个非常简单的工具,用来跟踪可执行程序的系统调用(system call).最简单的使用是,它追踪可行程序运行时的整个生命周期,输出每一个系统调用的名字,参数和返回值. 但是它还可以做更多的事情: 它可以基于系统调用或者系统调用组来过滤 它可以通过计算制定系统调用的次数,花费的时间以及成功和失败的次数来描述系统调用的使用 它可以追踪发送给进程的…