
MySQL
阔海星沉
你只有非常努力才能显得毫不费力
展开
-
Binlog 中不完整的 Event 排查
容灾切换中的老鼠屎机房级别容灾的场景下,单次的 db 切换数量高达 2000+,难免遭遇各种各样平时难以遇到的问题。例如,下面这两个问题就困扰了我们一段时间:第一个问题是:sql_thread 无法正常 stop,导致切换失败在进行主备切换的时候,为了避免 sql_thread 写入和业务写入冲突,首先会 stop slave sql_slave。但是在 stop slave 的时候,有很小的概率会执行超时。第二个问题是:slave status 中的位点无法对齐,导致切换速度慢在进行主备原创 2021-10-05 12:39:38 · 269 阅读 · 0 评论 -
MySQL 的自增主键
自增主键是数据库中最常用的功能之一,这里简单介绍一下 MySQL 自增主键的内部原理、加锁方式以及临界值的处理方式。原创 2021-10-05 12:31:26 · 2245 阅读 · 0 评论 -
MySQL 支持表情字符
介绍一个不用改代码,只修改数据库配置,就可以让你的系统支持表情字符(utf8mb4)的方法。原创 2021-10-05 12:30:26 · 303 阅读 · 0 评论 -
数据库容灾
数据库容灾策略概述原创 2021-08-05 10:00:08 · 732 阅读 · 0 评论 -
MySQL 索引
索引的类型主键唯一索引(唯一约束)普通索引单列索引组合索引索引的使用单列索引、多列索引多个单列索引与单个多列索引的查询效果不同执行查询时,MySQL只能使用一个索引,会从多个索引中选择一个限制最为严格的索引组合索引、最左前缀MySQL 中索引的使用遵循“最左前缀”原则,查询条件中包含索引的左侧前缀组合的可以用到索引,否则无法用到索引,例如:ALTER T...转载 2020-01-22 10:49:33 · 129 阅读 · 0 评论 -
MySQL 事务
本文介绍了 MySQL 事务相关的概念和内核原理(原文参考何登成大神的博客)。转载 2020-01-22 18:50:02 · 186 阅读 · 0 评论 -
MySQL 锁
Innodb 中的锁行锁共享锁(S):允许一个事务去读一行,阻止其他事务获得相同数据集的排他锁。排他锁(X):允许获得排他锁的事务更新数据,阻止其他事务取得相同数据集的共享读锁和排他写锁。表锁意向共享锁(IS):事务打算给数据行加行共享锁,事务在给一个数据行加共享锁前必须先取得该表的 IS 锁。意向排他锁(IX):事务打算给数据行加行排他锁,事务在给一个数据行加排他锁前必...转载 2020-01-22 20:50:22 · 163 阅读 · 0 评论 -
MySQL 存储引擎
InnoDB 的数据组织结构转载 2020-01-22 23:40:12 · 187 阅读 · 0 评论 -
MySQL 复制
本文对 MySQL 复制功能和用法做了整理和介绍。原创 2020-01-23 17:35:39 · 1464 阅读 · 0 评论 -
MySQL 备份
备份的作用转载 2020-01-24 16:55:35 · 239 阅读 · 0 评论 -
MySQL 日常运维
范式和反范式查询优化使用索引原创 2020-01-27 14:10:07 · 644 阅读 · 0 评论 -
MySQL 性能优化
包括运行环境调优,配置参数调优转载 2020-01-27 17:44:20 · 172 阅读 · 0 评论 -
MySQL 故障转移
在高可用领域,除了通过规范化运维和软硬件优化,提升平均失效时间(MTBF), 降低平均恢复时间(MTTR)也非常关键,本文主要讲述的内容是其中的**故障转移**和**故障恢复**部分。原创 2020-01-27 19:22:20 · 1118 阅读 · 0 评论 -
MySQL 分布式
分布式系统已经无处不在,它有哪些特性?在 MySQL 应用过程中的表现形式是什么样的?分布式 MySQL 的数据质量怎么保障?这里做一些介绍和总结。原创 2020-01-28 18:40:52 · 652 阅读 · 0 评论 -
MySQL 管控
管控即自动化运维平台的建设,分为元数据管理、备份管理、实例管理、主机管理、任务管理、日志管理、日常维护。转载 2020-01-28 21:45:40 · 1249 阅读 · 0 评论 -
MySQL create table xxx select * from yyy 的坑
create table xxx select * from yyy;这种写法没有:主键、索引、约束、自增这种写法没有:主键、索引、约束、自增这种写法没有:主键、索引、约束、自增重要的事情说三遍;替代方案:create table xxx like yyy;insert into xxx select * from yyy;...原创 2020-10-21 16:10:02 · 627 阅读 · 0 评论 -
MySQL - 运维方法论
开始尝试总结自己的技术方法论,慢慢优化升级,用于指导自己的工作和技术PK。原创 2020-11-04 14:48:46 · 237 阅读 · 0 评论 -
MySQL-存储过程-高效清理数据
如果使用 MySQL 的分区功能,按照时间分区,来进行数据的归档管理,定时删除历史数据,从而实现数据生命周期的管理,这样是很方便的。但是,由于创建和删除分区都属于 DDL,如果有慢 SQL,就会发生 DML 堵塞 DDL 堵塞 所有操作,引起阻塞。但是,使用存储过程+DELETE清理数据,往往会引起全表扫,如果表内数据非常大,清理效率会很低。本文讲解了如何在存储过程中合理利用索引清理数据。原创 2020-11-16 21:35:36 · 1771 阅读 · 4 评论