作者:胖头鱼的鱼缸(尹海文)
Oracle ACE Pro: Database(Oracle与MySQL)
PostgreSQL ACE Partner
10年数据库行业经验,现主要从事数据库服务工作
拥有OCM 11g/12c/19c、MySQL 8.0 OCP、Exadata、CDP等认证
墨天轮MVP、年度墨力之星,ITPUB认证专家、专家百人团成员,OCM讲师,PolarDB开源社区技术顾问,HaloDB外聘技术顾问,OceanBase观察团成员,青学会MOP技术社区(青年数据库学习互助会)技术顾问
圈内拥有“总监”、“保安”、“国产数据库最大敌人”等称号,非著 名社恐(社交恐怖分子)
公众号:胖头鱼的鱼缸;CSDN:胖头鱼的鱼缸(尹海文);墨天轮:胖头鱼的鱼缸;ITPUB:yhw1809。
除授权转载并标明出处外,均为“非法”抄袭
题目标题的总监特指我。
数据库监控是DBA工作中必不可少的工具,那么在我看来数据库监控需要做成什么样。
之前看到过一个“监控”,就是写脚本,定时执行,执行结果导出来再通过程序处理一下就变成了有曲线的监控输出了,看似非常高大上且。但是定时间隔比较长,不能做到实时,而经常出现异常了,DBA都是听到业务反馈后才去处理,然后又是一堆脚本查询才能。
因此我认为,一个数据库监控是需要能够实时输出数据库的监控结果,而且能够将需要展示的内容以直观方式展现给DBA,方便监控、优化或排障。
对于数据库本身来说,我们需要了解到当前数据库的运行状态监控,这其中最主要的就是监控数据库相关进程/线程,包括他们的存活状态及运行状态(是否存在运行异常,比如卡死)。
然后就是就是数据库的性能状态监控,这其中应该包含数据库的活动会话情况(包含其等待分类)、等待情况(按等待类型分类)、实时运行SQL列表等。
数据库是有运行底座的,那么对于操作系统的监控也是需要的,包括CPU、内存、IO、网络等占用情况,以及文件系统的空间使用率监控等。(云化、容器化底座类似)
之前听说一些数据库监控平台,最后发现性能消耗最高的SQL是源自于监控,有时候还会监控间隔配置不合理到数据库数据库运行异常。
那么数据库监控应当尽可能减少对数据库运行,特别是监控本身可能带来的性能问题。那么这里就要进行一些取舍:
其实数据库监控平台也应该附带一些数据库维护功能:
本期是从我作为一个DBA角度说了说我想要的数据库监控。
老规矩,知道写了些啥。
来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/31466763/viewspace-3027876/ ,如需转载,请注明出处,否则将追究法律责任。