在全民健身理念深入人心以及健康意识不断提升的当下,健身行业迎来了蓬勃发展的黄金时期。越来越多的人愿意投入时间和金钱参与健身活动,追求健康的生活方式,这使得健身房...
刚做DBA那阵子,我对“加索引”这件事有一种朴素的信仰——查询慢?加索引。再慢?再加一个。
有回清理历史数据,一张大表删掉了一大半。删完我去看磁盘,几乎没动。我以为删错了,又核对了一遍行数,确实少了。数据没了,空间却还占着。我第一反应是跑 OPTIMI...
有一次线上告警:数据库突然不响应任何写操作了。应用侧报“Lock wait timeout”,但查锁等待,没有明显的行锁冲突。
北京靠谱前程网络技术有限公司 | Go开发工程师 (已认证)
从秒杀高并发切入,按锁的作用范围梳理单机 Go 锁、MySQL 行锁/版本锁、Redis/ZK/etcd 分布式锁;说明进程内锁跨机无效、数据库锁易阻塞、分布式...
数据库教程FGMT73:MySQL数据库工程师入门培训实战教程(从MySQL5.7 到 MySQL8.0)
大促零点,QPS 从 2000 飙到 3 万,MySQL CPU 干到 100%,接口 RT 从 50ms 涨到 3s,超时告警刷屏——这个场景我这些年真实经历...
有回报表导出改了异步,接口秒回「任务已提交」。业务侧看着挺好,可连接池的告警开始响。我以为导出量大,先把它往上调了一截。加了还是满,业务量也没涨。
我第一反应是连接池打满了,赶紧连上去看Threads_connected——才300多。max_connections设的是1000。
有一次跨区域项目对账,差了一天。金额都对,笔数也对,就是几笔的日期对不上。我先怀疑数据错了,把那一整天的流水翻了个遍。交易记录都在,时间戳也在,没找出毛病。最后...
一个 "为什么 MySQL 用 B + 树做索引?" 就能从索引原理问到磁盘 IO;一个 "MVCC 怎么实现的?" 能问掉半条命。
业务方说订单表数据太多,让清理历史数据。我吭哧吭哧写了个DELETE FROM orders WHERE create_time < '2024-01-01',...
有段时间我写 SQL,总以为数据库是按我写的顺序从上往下跑的。写什么,它就按什么顺序执行。结果一个 LEFT JOIN 的过滤条件,被我写进了 WHERE。跑完...
1.将mydb9_stusys数据库下的student、sc 和course表,备份到本地主机保存为st_msg_bak.sql文件,然后将数据表恢复到自建的d...
读库不够用了就加从库、把查询拆出去——这是最直觉的扩容动作。但紧接着的问题是:写完立刻读,读到了旧数据。司机刚提现成功,刷新页面余额还是老的,工单电话马上打进来...
凌晨两点的告警里,最让人摸不着头脑的一种是 Deadlock found when trying to get lock——两个事务互相等待对方释放锁,数据库只...