公司核心主库,在我来公司时是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主库优化总结的更多相关文章

  1. Mysql 性能优化教程

    Mysql 性能优化教程 目录 目录 1 背景及目标 2 Mysql 执行优化 2 认识数据索引 2 为什么使用数据索引能提高效率 2 如何理解数据索引的结构 2 优化实战范例 3 认识影响结果集 4 ...

  2. 转 Mysql性能优化教程

    Mysql性能优化教程 背景及目标 厦门游家公司(4399.com)用于员工培训和分享. 针对用户群为已经使用过mysql环境,并有一定开发经验的工程师 针对高并发,海量数据的互联网环境. 本文语言为 ...

  3. Mysql服务优化

    Mysql服务优化   Mysql服务加速优化的6个阶段 硬件层面优化 操作系统层面优化 Mysql数据库层面优化 网站集群架构层面优化 安全优化 流程.制度控制优化 1.硬件层面优化 CPU     ...

  4. [sql]大型网站MySQL深度优化揭秘

    大型网站MySQL深度优化揭秘 第1章优化的思路和线路 1.1 网站优化的思路    2 1.2 MySQL优化,nginx这样的东西怎么优化? 第2章硬件层面优化 2.1 数据库物理机 2.1.1 ...

  5. 【学习】016 MySQL数据库优化

    MySQL如何优化 表的设计合理化(符合3NF) 添加适当索引(index) [四种: 普通索引.主键索引.唯一索引unique.全文索引] SQL语句优化 分表技术(水平分割.垂直分割) 读写[写: ...

  6. Mysql性能优化全揭秘-庖丁解牛

    「为什么写」 一直想写数据库相关的文章,最直接的原因是数据库这块我们工作中每天都会用到,也是面试求职绕不开的话题,无论你是何种测试,优秀的数据库能力都会非常加分,最近我在总结数据库性能优化这块内容,性 ...

  7. Mysql性能优化三(分表、增量备份、还原)

    接上篇Mysql性能优化二 对表进行水平划分 如果一个表的记录数太多了,比如上千万条,而且需要经常检索,那么我们就有必要化整为零了.如果我拆成100个表,那么每个表只有10万条记录.当然这需要数据在逻 ...

  8. (转)MySQL配置文件mysql.ini参数详解、MySQL性能优化

    本文转自:http://www.cr173.com/html/18331_1.html my.ini(Linux系统下是my.cnf),当mysql服务器启动时它会读取这个文件,设置相关的运行环境参数 ...

  9. MySQL配置文件mysql.ini参数详解、MySQL性能优化

    my.ini(Linux系统下是my.cnf),当mysql服务器启动时它会读取这个文件,设置相关的运行环境参数. my.ini分为两块:Client Section和Server Section.  ...

  10. Mysql数据库优化

    to be add... --------------------------------------------------------------------------------------- ...

随机推荐

  1. solr-es

    一.lucene 1.是什么 是apache提供的一套java写的用于全文检索工具包,该工具包提供了用于实现全文检索的api类,可用于实现搜索引擎功能. 2.搜索常用方法 顺序扫描法:应用于数据结构固 ...

  2. [转帖]TLS1.3 正式版发布 — 特性与开启方式科普

    https://cloud.tencent.com/developer/article/1376033 互联网工程指导委员会(IETF)释出了传输层安全性协议的最新版本 TLS 1.3.TLS 被广泛 ...

  3. [转帖]Linux系统安装之后,如何调节CPU性能策略

    https://baize.cc/posts/efc.html#:~:text=Linux%E7%B3%BB%E7%BB%9F%E5%AE%89%E8%A3%85%E4%B9%8B%E5%90%8E% ...

  4. 近十年CPU性能提升效果分析

    近十年CPU性能提升效果分析 测试脚本 ./redis-server redis.conf cpu=`cat /proc/cpuinfo |grep "model name" |h ...

  5. 【转帖】一道面试题:JVM老年代空间担保机制

    面试问题 昨天面试的时候,面试官问的问题: 什么是老年代空间担保机制?担保的过程是什么? 老年代空间担保机制是谁给谁担保? 为什么要有老年代空间担保机制?或者说空间担保机制的目的是什么? 如果没有老年 ...

  6. [转帖]gdb进阶调试技巧

    https://www.jianshu.com/p/9bdaa0644dba 整理一下在linux下C/C++用gdb工具debug一些提高效率的操作.基本的gdb操作就不在这里赘述了. 打印各种变量 ...

  7. [转帖]Linux文本处理三剑客sed详解(正则匹配、命令示例)

    https://developer.aliyun.com/article/885609?spm=a2c6h.24874632.expert-profile.312.7c46cfe9h5DxWK 简介: ...

  8. [转帖]Linux使用Stress-ng测试CPU、内存、磁盘I/O满载情况教程与范例

    https://www.xiaoyuanjiu.com/108301.html 介绍如何在 Linux 系统上使用 stress-ng 负载测试工具,产生 CPU.内存等资源满载的状况. stress ...

  9. Core 文件的简单学习

    背景 最近公司内经常出现jvm进程宕机的情况. 宕机之后没有产生jvm的dump文件.比如xxx.hprof 但是产生了 core.$pid的文件. 曾经在aarch64架构上宕机时曾经想学习一下co ...

  10. DotLiquid(.net模版引擎)

    可用生成C#代码,在KSFramework中有使用:https://github.com/mr-kelly/KSFramework 主页:http://dotliquidmarkup.org/ 文档: ...