使用 pt-osc 工具增加字段时的不当处理导致了一次故障
Posted by dbtan on 6月 27th, 2019[TOC]
故事是这样的... 小宝同学在使用 pt-osc 给一个表 A 增加字段,Copying 数据时,异常中断了,字段没有增加成功。(此时,还没有故障)
小宝同学也知道 pt-osc 失败后,需要「清理现场」(删除生成的临时表和触发器)。
但不知道为何只是删除了临时表,而没有删除3个触发器...
这就引发了这次故障,无法对
... ...
<阅读全文>
[TOC]
故事是这样的... 小宝同学在使用 pt-osc 给一个表 A 增加字段,Copying 数据时,异常中断了,字段没有增加成功。(此时,还没有故障)
小宝同学也知道 pt-osc 失败后,需要「清理现场」(删除生成的临时表和触发器)。
但不知道为何只是删除了临时表,而没有删除3个触发器...
这就引发了这次故障,无法对
... ...
<阅读全文>
需求
一个表字段叫status,值是1,2,3,4,5,6,7,8,9
project manager想进行分类,然后某一类的排序规则是按照status 1,5,3,4 排序,相同状态的按时间排序
实现sql SQL select demo_id,status,create_time from demo_table
where userId='123456' and status in (1,5,3,4)
order by field(status,1,5,3,4), demo_id desc
... ...
<阅读全文>
我们知道MySQL数据库相关的一些文件,可以分为MySQL数据库文件以及各存储引擎相关的文件。与MySQL数据库有关的文件中,错误文件和二进制日志文件非常重要。当MySQL数据库发生任何错误时,DBA首先就应该去查看错误文件,从文件提示的内容中找出问题所在。当然,错误文件不仅记录了错误内容,也记录了警告的信息,通过一些
... ...
<阅读全文>
二进制日志(binary log)记录了对MySQL数据库执行更改的所有操作,但是不包括SELECT和SHOW这类操作,因为这类操作对数据本身并没有修改。然而,若操作本身并没有导致数据发生变化,那么该操作可能也会写入二进制日志。例如: SQL [email protected][tqdb] 16:00:48> update t set b = 'dbtan' where a = 6;
Query O
... ...
<阅读全文>
在使用MySQL的业务中,经常会碰到各种MySQL的死锁。一直以来,我们接触比较多的是Oracle数据库,而大家正在逐步开始使用MySQL数据库,都对MySQL的死锁不甚了解,趁这次机会,好好学习一下MySQL的死锁。我们的死锁的讨论是在InnoDB引擎基础上的。
1. MySQL索引
1.1 聚簇索引(Clustered Indexes)
InnoDB存储引擎的数据组织
... ...
<阅读全文>
Recent Comments