记一次生产数据库事故

版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/tuchangsheng801004/article/details/89539051

记一次生产数据库事故

事故起因

最后在做报表,报表的数据产生是直接在只读库上面进行的。但因数据量大需要对表做优化,现行优化方式为简单粗暴的加索引。
另外说明一数据库用的是mysql 5.7版本,数据量在40W

事故故事

在一张报表中加了一些数据列的处理,引入了一张新的表。加入后反映说报表导不出来的,在对Sql explain后来发现没有走指定的索引,然后发现是新引入的这个表没有主键,也没有唯一索引(画外音:这也可以,这样的表也能上正式?哈哈哈哈)。那这张表要解决的就是需要一个主键或者唯一索引,最后确认下来我们加上主键。在这时Sql查询一切都正常。然而事故在此时开始了,我们决定将之前不需要的索引进行一次优化,删除一条索引。事故就此发生了。

事故现场

在对索引进行删除时我们使用了如下语句:

drop index IDX_XXX;

初步看这是没有问题。但这条语句的执行过程会锁表。什么会锁表?我不知道这个事啊。

看这里删除索引的过程

猜你喜欢

转载自blog.csdn.net/tuchangsheng801004/article/details/89539051