所有企业的业务数据库系统都是重中之重,如何来保证系统安全性与稳定性,需要DBA每日来通过相应的巡检指标进行相关记录,今天我们就来简单说一下

OS健康检测

将CPU、内存、磁盘I/O状况、网络状况等填到上午高峰期检查情况和下午高峰期检查情况栏里。对于CPU和内存、磁盘IO记录数值,对于网络状况,记录正常或不正常。

检测CPU情况

可以看到,1分钟,5分钟,15分钟的负载都为0,系统很健康的说

检测内存状况

可以看到,内存虽然占用了90%以上,但是SWAP交换分区并没有被占用,所以属于业务正常情况

检测硬盘状况

可以看到,文件系统只用到了不足10%,还有很大的磁盘空间,很健康

通过vmstat命令检测系统

Linux 内存监控vmstat命令输出分成六个部分:(参考资料:http://blog.csdn.net/lengyuhong/article/details/5855056)

1、进程procs:

r:在运行队列中等待的进程数 。

b:在等待io的进程数 。

2、Linux 内存监控内存memoy:

swpd:现时可用的交换内存(单位KB)。

free:空闲的内存(单位KB)。

buff: 缓冲去中的内存数(单位:KB)。

cache:被用来做为高速缓存的内存数(单位:KB)。

3、Linux 内存监控swap交换页面

si: 从磁盘交换到内存的交换页数量,单位:KB/秒。

so: 从内存交换到磁盘的交换页数量,单位:KB/秒。

4、Linux 内存监控 io块设备:

bi: 发送到块设备的块数,单位:块/秒。

bo: 从块设备接收到的块数,单位:块/秒。

5、Linux 内存监控system系统:

in: 每秒的中断数,包括时钟中断。

cs: 每秒的环境(上下文)转换次数。

6、Linux 内存监控cpu中央处理器:

cs:用户进程使用的时间。以百分比表示。

sy:系统进程使用的时间。以百分比表示。

id:中央处理器的空闲时间。以百分比表示。

假如r经常大于4,且id经常小于40,表示中央处理器的负荷很重。 假如bi,bo 长期不等于0,表示物理内存容量太小。

通过iostat命令检测系统

比较重要的参数(参考资料:http://blog.csdn.net/wyzxg/article/details/3985221 )

%util: 一秒中有百分之多少的时间用于 I/O 操作,或者说一秒中有多少时间 I/O 队列是非空的

svctm: 平均每次设备I/O操作的服务时间

await: 平均每次设备I/O操作的等待时间

avgqu-sz: 平均I/O队列长度

如果%util接近100%,表明i/o请求太多,i/o系统已经满负荷,磁盘可能存在瓶颈,一般%util大于70%,i/o压力就比较大,读取速度有较多的wait.同时可以结合vmstat查看查看b参数(等待资源的进程数)和wa参数(IO等待所占用的CPU时间的百分比,高过30%时IO压力高)。

await 的大小一般取决于服务时间(svctm) 以及 I/O 队列的长度和 I/O 请求的发出模式。如果 svctm 比较接近 await,说明 I/O 几乎没有等待时间;如果 await 远大于 svctm,说明 I/O 队列太长,应用得到的响应时间变慢。

通过sar命令检测系统

sar命令较为复杂,牵扯参数较多,这里就不再详解了

检测Oralce进程

Oracle后台进程是oracle实例的重要组成部分,后台进程是否正常工作直接决定了Oracle运行的正常与否。如果Oracle后台进程停止,将导致Oracle实例的崩溃。(最少应该有dbwr、lgwr、smon、pmon、ckpt等几个主要进程)

检测Oracle监听

Oracle监听进程侦听从客户端(如应用服务器)发来的对数据库的连接请求,然后为该请求建立一个连接。如果监听进程关闭,则无法建立起应用服务器与数据库服务器之间的连接。(SID最少应该有一个为READY状态)

检测Oracle死锁

死锁是由于2个session互相交叉阻塞对方而产生的,Oracle会自动探测到死锁并回滚其中的一个事务。死锁一般是由于应用逻辑造成的,发生死锁时,需要将导致死锁的SQL反馈给开发人员,以进一步解决。(也应该时常检测alert日志,看看有没有严重的或者频繁出现的ORA-错误并解决)

Oracle检测

检查Oracle实例状态

正常情况下,Oracle实例状态处于OPEN状态,通过检查此项,可以确定Oracle实例是否正常。

检查Oracle数据库状态

通过查看Oracle数据库状态,可以检查数据库名称、数据库归档模式、数据库打开模式,从而确定数据库是否处于正常的状态。(测试库未开启归档,属于正常)

检查Oracle会话状态

当前会话数是当前从应用服务器到数据库服务器之间建立的连接数量,这个数量与数据库的负载之间有密切的联系,一个稳定运行的数据库里,会话数量应保持平稳,如果出现会话数量大幅增加或大幅减少,就意味着可能出现了问题,需要进一步查找原因。(需要与日常稳定数值对比)

检查锁等待会话

通过查看会话的锁等待状况,可以了解数据库中是否有锁资源争用的现象,如果出现了时间较长的锁等待现象,可能会严重影响业务的正常运行。因此,如果在检查中发现数据库锁等待问题,需要进一步检查问题发生的原因。(返回值为0,表示正常)

检查控制文件状态

控制文件是数据库的重要组成部分,如果所有的控制文件发生损坏,将导致数据库无法打开,通过检查控制文件状态,可以及时发现损坏的控制文件,及时采取补救措施。(STATUS为空,状态正常)

检查Oracle重做日志文件状态

重做日志文件是oracle数据库的重要组成部分,通过检查重做日志文件可以及时发现重做日志文件出现的损坏等问题。(STATUS为空,TYPE为ONLINE,状态正常)

检查Oracle表空间状态

正常情况下,表空间应处于online状态,如果表空间处于offline状态,则用户将无法访问表空间,通过检查表空间状态,可以及时发现那些表空间处于非正常状态。(STATUS为ONLINE,状态正常)

检查Oracle回滚段状态

在回滚段处于自动管理的模式下,回滚段的状态是自动转换的,由Oracle控制。(STATUS为ONLINE,状态正常)

检查Oracle数据文件状态

通过检查Oracle数据文件状态,可以及时发现发生数据损坏的数据文件。(STATUS:系统表空间为SYSTEM,其余表空间为ONLINE,状态正常)

检查Oracle所有对象状态

在正常情况下,数据库中所有对象状态都应该是VALID,如果出现了处于INVALID状态的对象,则需要进一步检查,确定是否需要重新编译。(无返回值,状态正常)

检查Oracle相关资源使用情况

通过查看v$resource_limit视图,可以查看数据库初始化参数设置是否合理,如果有不合理或者超过参数设置范围的情况,就需要考虑进行适当的调整。(返回结果中“LIMIT_VALU”‐“MAX_UTILIZATION”>5,状态正常)

检查Oracle表空间增长情况

Oracle数据库的数据是存放在表空间里,如果表空间剩余空间不足,数据库无法继续写入数据,数据库将报错。因此,及时检查表空间使用情况,确保表空间剩余空间维持在20%以上,对数据库的正常稳定运行来说具有重要意义。(所有表空间的PCT_FREE均大于20%,状态正常)

检查Oracle扩展异常对象

数据库中每个segment是由extent组成,而每个segment所能容纳的extent数量是有限制的,dba_segments中的max_extents列就是每个segment所能容纳的最大extent数量。如果segment中的extent数达到了这个数量的限制,则segment将无法继续扩展,数据库将报错。因此,通过检查每个segment中的extent数量,可以及时发现数据库中扩展异常的对象,以便于采取进一步参数,避免出现segment无法扩展的问题出现。(无返回值,状态正常)

检查Oracle系统表空间

Oracle系统表空间一般是用于存放sys和system用户数据的,通常其它用户的数据是不能存放在系统表空间中,通过检查这项内容,可以发现有哪些非sys和system用户的数据被存放在系统表空间里,以防止其存储空间被过度占用而引起数据库问题。(此类用户属于内部用户,状态正常)

除了上述基本检测外,还需要检测每日的RMAN备份情况(全备或者增量备份),逻辑备份情况(EXPDP或EXP),并生成statspack与AWR报告,对数据库进行具体性能分析。

本文转自bear_cat51CTO博客,原文链接:http://blog.51cto.com/bearlovecat/865698 ,如需转载请自行联系原作者

Oracle日常巡检相关推荐

  1. oracle巡检表,ORACLE日常巡检内容

    Oracle日常巡检 一.操作系统 1.查看IP地址: ifconfig –a 2.查看文件系统使用情况 df –k 参考:文件系统使用率大于85%需要注意,提醒客户是否需要扩文件系统或者删除不需要的 ...

  2. 高效进行 Oracle 日常巡检——数据库基本情况检查

    对于线上的业务,Oracle 的数据库运行的稳定性和安全性是用户关心的一个至关重要的问题,除了通过监控平台对数据库进行监控以外,还需要定期对数据库进行"体检",数据库巡检是保障数据 ...

  3. Oracle 日常巡检——数据库基本情况检查

    对于线上的业务,Oracle 的 数据库 运行的稳定性和安全性是用户关心的一个至关重要的问题,除了通过监控平台对数据库进行监控以外,还需要定期对数据库进行"体检",数据库巡检是保障 ...

  4. 检查oracle当前性能,高效进行Oracle日常巡检:数据库性能与安全检查

    前言 ​对于线上的业务,oracle的数据库运行的稳定性和安全性是用户关心的一个至关重要的问题,除了通过监控平台对数据库进行监控以外,还需要定期对数据库进行"体检",是保障数据库稳 ...

  5. oracle数据库日常巡检计划

    日常巡检 1.保证数据库正常的运行 2.数据库日常备份检查 3.定期查看alert_SID.log,发现现有的问题 4.定期rebuild索引 5.定期analyze tables和indexs 6. ...

  6. ORACLE 数据库日常巡检

    Oracle 数据库日常巡检 阅读目录 检查数据库基本状况 检查Oracle相关资源的使用情况 检查Oracle数据库备份结果 检查Oracle数据库性能 检查数据库cpu.I/O.内存性能 检查数据 ...

  7. oracle 数据库日常巡检:数据库基本状况、oracle资源使用、数据备份结果、性能、cpu等、数据安全、归档日志、会话、SGA/PGA使用情况

    巡检目录 1. 检查数据库基本状况 2. 检查Oracle相关资源的使用情况 3. 检查Oracle数据库备份结果 4. 检查Oracle数据库性能 5. 检查数据库cpu.I/O.内存性能 6. 检 ...

  8. Linux服务器日常巡检脚本分享

    Linux 系统日常巡检脚本,巡检内容包含了,磁盘,内存cpu进程文件更改用户登录等一系列的操作 直接用就行了.报告以邮件发送到邮箱 在log下生成巡检报告. 欢迎关注微信公众号[厦门微思网络].ww ...

  9. 【DG】DG环境的日常巡检

    DG环境的日常巡检 目录 1.DG环境的日常巡检4 1.1.主库环境检查4 1.1.1.主库实例启动状态检查4 1.1.2.主库启动模式检查4 1.1.3.主库DG环境的保护模式检查4 1.1.4.主 ...

最新文章

  1. Spring ShedLock指南
  2. python爬虫入门(六) Scrapy框架之原理介绍
  3. 学习笔记(55):Python实战编程-Scrollbar
  4. spring aop 注释_使用Spring AOP,自定义注释和反射为您的应用程序审核基础结构
  5. 编辑index.html
  6. [Node.js] 使用nodejs操作mysql数据库
  7. IE6 Hotfix MS-042将导致其Crash!
  8. Android拖放– DragLinearLayout
  9. 华师大的计算机专业属于提前批吗,华东师范大学提前批上海录取线确定
  10. 机械制造作业考研题目答案分享——定位误差及其计算
  11. 在 AWS上域名备案流程和文件
  12. 软件企业软件产品税收优惠政策
  13. 深度强化学习——DQN
  14. Chain validation failed
  15. 这些车企在企业微信里,装上高速的“组织引擎”
  16. 服务器设计系列 网络模型,网络服务器的结构模型
  17. Kafka Group coordinator xxx:9092 (id: xxx rack: null) is unavailable or invalid
  18. 手机短信验证码登录功能的开发实录(机器识别码、短信限流、错误提示、发送验证码倒计时60秒)
  19. @Scheduled用法
  20. 清华大学计算机系高考选科要求,2020年清华大学在北京招生专业选科要求对照表...

热门文章

  1. AXI SG DMA 简易驱动 版本构思 (一)
  2. hellowolrd 的系统调用
  3. python 实时日志监控_python动态监控日志内容的示例
  4. mac版python3.7怎么使用_【Mac环境】Mac使用python3.7环境
  5. html 左右选择框,jquery实现下拉框左右选择功能
  6. FPGA设计心得(2)边沿检测的问题进一步说明(仿真中一定能得到上升沿的设计)
  7. 函数空间中的最佳逼近
  8. Python进阶02 文本文件读写
  9. 咱们来聊聊快速失败和安全失败
  10. 京东王笑松:7FRESH是“无界零售”理论的业务践行