其乐融融的IT技术小站

标签:MYSQL

MySQL

MySQL:InnoDB的页合并与页分裂到底是什么

12

其乐融融 发布于 2024/01/08 01:33:14

不管是页分裂还是页合并,InnoDB都会在索引树上加写锁(x-latch)。在操作频繁的系统中这会是在隐患,可能会导致索引的锁竞争(index latch contention)。如果表中没有合并和分裂操作(也就是写操作),称之为“乐观(optimistic)”更新,只需要使用读锁(S)。带有合并或者分裂的操作称之为“悲观(pessimistic)”更新,使用写锁(X)。​

阅读()评论(0)赞 ()

MySQL

MySQL:MySQL的自增主键是连续自增吗?

2

其乐融融 发布于 2023/12/26 01:33:10

在普通的 insert 语句里面包含多个 value 值的情况下,即使 innodb_autoinc_lock_mode 设置为 1,也不会等语句执行完成才释放锁。因为这类语句在申请自增 id 的时候,是可以精确计算出需要多少个 id 的,然后一次性申请,申请完成后锁就可以释放了。

阅读()评论(0)赞 ()

MySQL

DDD死党:单引擎查询利器

10

其乐融融 发布于 2023/12/19 01:33:21

本文从一个日常开发场景出发,提出两个关键问题:代码过于繁琐,容易出错,同时开发效率低下;对性能设计关注不足,容易遗漏,产生性能问题;对于性能问题,从 MySQL B+Tree 进行推演,总结出该场景下的最佳使用实践,并将其提取为规范。

阅读()评论(0)赞 ()

MySQL

MySQL Repeatable-Read 实现的一些误解

0

其乐融融 发布于 2023/12/14 01:33:35

对于 first-committer-wins 的定义, 在si 模式下, 如果在Start-Timestamp -> Commit-Timestamp 这之间如果有其他的trx2 修改了当前trx1 修改过的内容, 并且在trx1 提交的时候, trx2 已经提交了. 那么trx1 就会abort, 这个叫first-committer-wins。

阅读()评论(0)赞 ()

MySQL

MySQL:从MySQL看主从架构高可用性实现

2

其乐融融 发布于 2023/12/14 01:33:22

semi-sync在网络故障超时的情况下会退化成async,这个时候如果刚好主库掉电了,有些binlog还没有传给从库,从库无法判断数据跟主库是否一致,如果强行切换可能会导致丢数据,在金融业务场景下只能"人工智能"来做切换,服务中断时间长。

阅读()评论(0)赞 ()

MySQL

线上业务优化之案例实战

2

其乐融融 发布于 2023/12/14 01:33:19

在本文提到的大文件上传批量写入的场景下,要是追求极致性能我推荐是不启用事务的。假如在批量写入过程中发生网络波动或者数据库宕机,我们其实只需要重新新建一条通知消息,然后重新上传包含用户 id 的文件即可。

阅读()评论(0)赞 ()

MySQL

线上优化之案例实战,你学会了吗?

1

其乐融融 发布于 2023/12/13 01:33:59

像日志这种大数据量落库,都是新增且无修改得场景建议使用 Clickhouse 进行存储,好处是相同数据量下对比 MySQL 占用存储更少,查询速度更快,坏处就是并发查询性能比较低,相比 MySQL 使用不算那么成熟。

阅读()评论(0)赞 ()

MySQL

MySQL命令行备份数据库的关键步骤

1

其乐融融 发布于 2023/12/13 01:33:53

MySQL是一个广泛使用的开源关系数据库管理系统,它常用于各种规模的应用,从个人博客到大型企业级系统。在使用MySQL的过程中,数据备份是一项至关重要的任务,它能够确保在发生数据丢失或系统故障时,我们可以恢复和重新部署数据库。

阅读()评论(0)赞 ()

MySQL

如何备份和恢复MySQL数据库?mysqldump用法

3

其乐融融 发布于 2023/12/13 01:33:50

在MySQL数据库管理中,备份和恢复数据库是非常重要的操作。备份可以帮助我们在数据丢失或者出现其他问题时恢复数据,而恢复可以帮助我们将备份的数据重新导入到数据库中。本文将详细介绍如何备份和恢复MySQL数据库。

阅读()评论(0)赞 ()