业务挑战及运维痛点
数据库是所有系统的基座,开发运维人员每天都需要对数据库进行操作或者查询,但是使用人员对数据库的了解程度参差不齐,数据库的稳定性也不断受到如下问题的挑战:
业务快速迭代,数据库故障频发。
- 随着数据量的增长,产生了大量慢 SQL,性能问题严重;
- 表结构或者索引设计不当,频繁出现死锁;
- CPU 和内存利用率突然飙满等;
缺少专业 DBA,问题诊断解决困难。
管理成本高:随着云的普及,将数据库部署在不同的环境中,多环境和多种数据库的管理挑战也随之而来。
安全风险大:随着数据价值的提升,面临着越来越多内外部的风险,数据泄漏、数据丢失等问题层出不穷。
平台能力
智家数据库运维平台是基于公有云能力,集成在开发者平台,提供数据库一站式运维管理,核心能力包括:
- 降低数据库运维门槛:无需 DBA 背景,开发可以使用平台自主解决数据库典型问题。
- 多环境统一管理:云上云下数据库,统一管理、统一监控、统一告警。
- 支持多种数据库:MySQL / MariaDB、Redis、MongoDB、PostgreSQL 等。
- 保障数据库安全:基于数据库自治服务 DAS,提供高危 SQL 识别、SQL 注入检测、新增访问来源识别、敏感数据访问发现等服务;基于数据库安全登陆 DMS,提供操作安全审计能力,有效保障数据库安全。
典型场景 & 解决方案
场景一、紧急故障快速诊断及处理
- 通过平台提供的自治入口,进入自治服务;
- 查看实时会话,通过执行时间(单位是S)和状态(非Sleep)两个指标判断是否有会话阻塞;
- 根据紧急程度,采取不同措施:状况紧急,直接结束会话;状况不紧急,点击优化分析 SQL 阻塞原因。
场景二、性能监控及告警处理
- 监控指标:CPU 使用率、内存使用率、TPS/IOPS、磁盘空间、连接数、网络流量。
- 告警配置:告警模板有 6 种告警,区分阈值和事件两种类型,支持钉钉/邮件/短信三种通知方式。
- 告警处理:日常告警会同时通知 DBA 和业务,接收到告警应该进入平台及时查看监控和会话信息进行处理。
告警项 | 告警规则 | 发送间隔 | 告警类型 | 通知方式 |
---|---|---|---|---|
数据库无法连接 | 连续 3 次则告警 | 30分钟 | 事件告警 | 短信 / 邮件 / 钉钉 |
CPU使用率(%) | 连续 1 次总是大于等于 90 则告警 | 30分钟 | 阈值 | 短信 / 邮件 / 钉钉 |
内存使用率(%) | 连续 1 次总是大于等于 95 则告警 | 30分钟 | 阈值 | 短信 / 邮件 / 钉钉 |
活跃连接数 | 连续 3 次总是大于等于 100 则告警 | 30分钟 | 阈值 | 短信 / 邮件 / 钉钉 |
磁盘使用率(%) | 连续 3 次总是大于等于 90 则告警 | 30分钟 | 阈值 | 短信 / 邮件 / 钉钉 |
MySQL复制中断 | 连续 3 次则告警 | 30分钟 | 事件告警 | 短信 / 邮件 / 钉钉 |
场景三、慢日志抓取及 SQL 优化
- 慢日志的查看和 SQL 优化如下图案例所示。
- 优化策略:优先关注 Top10 执行次数和执行时间都较高的 SQL。
- 优化方法:系统诊断推荐 + 优化 Explain 执行计划。
场景四、死锁诊断分析
- 诊断:平台自治 -> 锁分析 -> 立即诊断。
- 分析:根据诊断信息分析,处理方式一般有三种:拆分事务、添加索引、调整业务 SQL 执行顺序一致性。
场景五、安全管控
数据安全一般有三级保障策略:
- 事前权限管控:白名单限制、授权粒度最小化原则。
- 事中安全审计:操作审计、高风险 SQL 审计、SQL 注入等。
- 事后备份恢复:海飞等第三方合作方。
如何接入平台?
如果需要接入平台,需要提供服务器登陆账号和数据库连接账号,详细咨询可联系杨楠 19028862。