中间件与数据库:MySQL

Go 语言使用 MySQL 的常见故障分析和应对方法

很多同学在使用Go和数据库打交道的过程中,经常会遇到一些异常不知道为什么,本文从SQL连接池的原理进行分析,模拟了一些例子对异常的现象进行解读分析,并给出一些常见的应对手段,期望能帮助到大家。

数据库全量SQL分析与审计系统性能优化之旅

本文介绍了美团基础研发平台抓包方案在数据库审计实践中遇到的性能问题以及优化实践。

不要再使用MySQL online DDL了

如何更优雅的执行DDL操作,怎么避免线上踩坑,一文带你选择更合适的操作方法。

MySQL 哈希分区表

提到分区表,一般按照范围(range)来对数据拆分居多,以哈希来对数据拆分的场景相来说有一定局限性,不具备标准化。接下来我用几个示例来讲讲 MySQL 哈希分区表的使用场景以及相关改造点。

mysql查询 limit 1000,10 和limit 10 速度一样快吗?如果我要分页,我该怎么办?

同样都是拿10条数据,查第一页和第一百页的查询速度是一样的吗?为什么?

Mysql的索引为什么使用B+树而不使用跳表?

在我们的印象中,mysql数据表里无非就是存储一行行的数据。跟个excel似的。

直接遍历这一行行数据,性能就是O(n),比较慢。为了加速查询,使用了B+树来做索引,将查询性能优化到了O(lg(n))。

但问题就来了,查询数据性能在 lg(n) 级别的数据结构有很多,比如redis的zset里用到的跳表,也是lg(n),并且实现还贼简单。

那为什么mysql的索引,不使用跳表呢?

MySQL 查询避坑指南

在MySQL查询中,你可能会不经意的掉入某些坑中,甚至某些坑可能让你不死也掉半条命。下面罗列一下常见的坑。

日志分析 + MySQL = ?

去哪儿网日志分析实践。

汽车之家MySQL高可用建设实践

MySQL具有开源免费,运维简单,性能好等优点,是在汽车之家使用最多的一种数据库。数据库作为应用的后端存储,承担着数据持久化存储的功能,是应用可以正常对外提供服务的关键组件,数据库的高可用非常重要。

相对于成熟的商业数据库软件,开源的 MySQL高可用需要使用者自己进行设计和研发,本文介绍汽车之家MySQL高可用架构发展历程,建设实践情况。

从杀慢查询入手来预防 MySQL 雪崩的办法

保证MySQL数据库正常运行的最后一道防线。

备份恢复系统之MySQL篇

备份作为容灾的基础,其重要性不言而喻。本文将以我们熟悉的MySQL数据库着手,构建企业级备份恢复系统。 希望能带给大家一些借鉴意义,欢迎大家围观。

MySQL 深潜 - MDL 锁的实现与获取机制

本文介绍在 MDL 系统中常用的数据结构及含义,从实现角度讨论 MDL 的获取机制与死锁检测,最后分享在实践中如何监控 MDL 状态。

Sourcerer: MySQL Ingestion at Scale

Architecture and Challenges faced at scale.

mysql锁机制的再研究

在分布式系统中,分布式锁已经的使用越发常见,我们系统由于较为老旧,使用数据库实现分布式锁,方案为:使用lock_key, lock_biz组成唯一索引,利用数据库对一条记录insert和delete操作的事务性来实现不可重入的db分布式锁。

前一段时间,发现系统分布式锁出现死锁告警,在处理完问题后,重新去看现场日志,发现数据库出现了死锁,在阿里云性能诊断系统中的锁分析里找出死锁日志,但奇怪的是不同的唯一索引值出现了死锁,如下图所示。抱着不懂就研究的心态,重新去研究了mysql Inndb的锁机制(ps:公司mysql 默认是RC隔离级别)。

MySQL 分布式事务的“路”与“坑”

什么是分布式事务?MySQL分布式事务应当如用使用?是否有什么坑需要注意?它的读写一致性是如何保证的?点我,听我一一道来!

MySQL中的IO问题分析与优化

在业务迭代中,随着数据量的上升,会出现慢SQL情况,但是当我们去分析单条SQL的时候,发现其执行速度并没有那么慢,原因是什么呢,那么就可能是RDS服务器IO产生了瓶颈。

Home - Wiki
Copyright © 2011-2024 iteam. Current version is 2.125.1. UTC+08:00, 2024-05-18 09:31
浙ICP备14020137号-1 $Map of visitor$