我要在线上数据库的一个表增加个字段,这个表非常小,就几K,但执行不了,一执行就卡死,锁掉。


alter table tiv_product_detail_copy add activity_type varchar(40) NOT NULL COMMENT '活动类型 lbjp-结派 lc-活动 dbq-券礼包';


解决:将所有正在使用这个表库(本文要修改的表是xy库中的表)的进程kill掉,可能是某个进程卡住。

写了个脚本解决:


#!/bin/sh

MYSQLADMIN="/usr/local/mysql3306/bin/mysqladmin"

for i in `$MYSQLADMIN processlist -uroot -p1234|grep -i sleep |grep  'xy' |awk '{print $2}'`

  do

     $MYSQLADMIN -uroot -p1234 kill $i

  done


执行上面的脚本后,就可以了。