核心MySQL主库优化总结
公司核心主库,在我来公司时是1主5从库(腾讯云RDS),外加7个自建级联从库。
从2020年2月到2021年8月优化总结:
1, 7个自建多级从库,从以前的中转同步改成从一级从库同步,废弃了5个从库实例,还有1个给大数据用,另外一个做备用
2,数据库容量控制, 期间清理出400多G空间的表数据
3,1主5从发展到了1主13从库
4,优化12个实例的每天4万次的慢SQL(超过1秒)
5,通过导入ELK的SQL审计日志,发现部分表查询次数过高,优化后减少调用7350万+次
6,通过导入ELK的SQL审计日志,发现数据安全事故
7,通过导入ELK的SQL审计日志,快速帮助研发定位线上问题
8,废弃了以前研发直连线上库查询数据方式
9,协助拆分表到其他MySQL实例,减少耦合,其中附件表(104G)拆分,经历8个月,考验耐心和协调能力等
10,从2020年5月份到2021年8月中,每1-2周,发送主库实例优化报告邮件,给领导和同事汇报。
每周都想下周能优化什么,记得有次到周四上午没找到可优化地方,以为下周优化邮件就没得写,没想到下午就找到优化的地方,真是心想事成。
11,处理了几十起数据库故障
(连接数曝高(PHP程序),从库硬件故障,CPU曝高,主库升级bug全部从库回放异常,TPS曝高(同步程序大批量写),从库长时间延迟, 模糊Like查询(改到ELK), QPS曝高,长事务未提交,高并发异常,Redis带宽被限异常,Redis的CPU持续80%等)
12,部署长事务监控,shell慢SQL自动发送邮件,每10秒保存Processlist信息等程序
13,程序化将14个MySQL实例的SQL审计日志导入到ELK(14实例每天4亿+条SQL执行日志)
核心MySQL主库优化总结的更多相关文章
- Mysql 性能优化教程
Mysql 性能优化教程 目录 目录 1 背景及目标 2 Mysql 执行优化 2 认识数据索引 2 为什么使用数据索引能提高效率 2 如何理解数据索引的结构 2 优化实战范例 3 认识影响结果集 4 ...
- 转 Mysql性能优化教程
Mysql性能优化教程 背景及目标 厦门游家公司(4399.com)用于员工培训和分享. 针对用户群为已经使用过mysql环境,并有一定开发经验的工程师 针对高并发,海量数据的互联网环境. 本文语言为 ...
- Mysql服务优化
Mysql服务优化 Mysql服务加速优化的6个阶段 硬件层面优化 操作系统层面优化 Mysql数据库层面优化 网站集群架构层面优化 安全优化 流程.制度控制优化 1.硬件层面优化 CPU ...
- [sql]大型网站MySQL深度优化揭秘
大型网站MySQL深度优化揭秘 第1章优化的思路和线路 1.1 网站优化的思路 2 1.2 MySQL优化,nginx这样的东西怎么优化? 第2章硬件层面优化 2.1 数据库物理机 2.1.1 ...
- 【学习】016 MySQL数据库优化
MySQL如何优化 表的设计合理化(符合3NF) 添加适当索引(index) [四种: 普通索引.主键索引.唯一索引unique.全文索引] SQL语句优化 分表技术(水平分割.垂直分割) 读写[写: ...
- Mysql性能优化全揭秘-庖丁解牛
「为什么写」 一直想写数据库相关的文章,最直接的原因是数据库这块我们工作中每天都会用到,也是面试求职绕不开的话题,无论你是何种测试,优秀的数据库能力都会非常加分,最近我在总结数据库性能优化这块内容,性 ...
- Mysql性能优化三(分表、增量备份、还原)
接上篇Mysql性能优化二 对表进行水平划分 如果一个表的记录数太多了,比如上千万条,而且需要经常检索,那么我们就有必要化整为零了.如果我拆成100个表,那么每个表只有10万条记录.当然这需要数据在逻 ...
- (转)MySQL配置文件mysql.ini参数详解、MySQL性能优化
本文转自:http://www.cr173.com/html/18331_1.html my.ini(Linux系统下是my.cnf),当mysql服务器启动时它会读取这个文件,设置相关的运行环境参数 ...
- MySQL配置文件mysql.ini参数详解、MySQL性能优化
my.ini(Linux系统下是my.cnf),当mysql服务器启动时它会读取这个文件,设置相关的运行环境参数. my.ini分为两块:Client Section和Server Section. ...
- Mysql数据库优化
to be add... --------------------------------------------------------------------------------------- ...
随机推荐
- [转帖]日常Bug排查-读从库没有原子性?
https://zhuanlan.zhihu.com/p/658508920 3 人赞同了该文章 日常Bug排查系列都是一些简单Bug排查.问题虽小,但经常遇到,了解这些问题,会让我们少走点弯路,提升 ...
- [转帖]一问带你掌握通过storcli做RAID
因为系统不支持直接做raid,所以需要使用storcli这个工具来操作.首先把工具上传到服务器任意目录,并使用命令chmod +x storcli64修改文件权限为可执行. 另外可通过命令ln -s ...
- 【转帖】mysql一个索引块有多少指针_深刻理解MySQL系列之索引
索引 查找一条数据的过程 先看下InnoDB的逻辑存储结构:node 表空间:能够看作是InnoDB存储引擎逻辑结构的最高层,全部的数据都存放在表空间中.默认有个共享表空间ibdata1.若是启用in ...
- [转帖]Arm CPU风起,补齐国产大芯片最后一块拼图 | 甲子光年
https://rmh.pdnews.cn/Pc/ArtInfoApi/article?id=30960014 最近一年,国产CPU火了. 今年6月24日,龙芯中科在科创板挂牌上市,公司主营自研Loo ...
- [转帖]SQL Server JDBC – Set sendStringParametersAsUnicode to false
https://vladmihalcea.com/sql-server-jdbc-sendstringparametersasunicode/ https://learn.microsoft.com/ ...
- pytest-assume插件-多重校验
自动化接口测试我们通常会对一条case设置多条断言,这样就会出现一个问题,如果前面一 个校验不通过,那么后面的校验就不会走到,如下图,可以看到校验走到assert False就不往 下走了,这个时候p ...
- Vue.use和install之间的关系
创建一个plugins.js文件 跟main.js同级下,创建一个plugins.js文件 export default { // install是vue给我们提供的.它会自动去执行install. ...
- element-ui中Select 选择器去除点击时的淡蓝色边框
<el-select class="my-el-select" v-model="tenantCont" placeholder="请输入机构标 ...
- 【解决了一个小问题】在某个linux基础镜像中安装python特定的版本
作者:张富春(ahfuzhang),转载时请注明作者和引用链接,谢谢! cnblogs博客 zhihu Github 公众号:一本正经的瞎扯 在某个基础镜像中,安装了python3.6.但是一个测试需 ...
- .NetCore开发人员首选框架---Bridge(Abp-VNext + Vue3)
bridge系统是基于Abp-VNext+Vue3开发的一套前后端分离的通用权限管理系统,不论是单体服务,还是微服务都可在此基础上自由扩展,此框架组合可以说是集成了.netcore在BS架构领域最前沿 ...