Even though for our core systems we have migrated most databases to DB2, we still have to deal with MySQL for some side systems, such as CRM, Blog, etc.   One of the MySQL features that I recently noticed is that dropping indexes on sizable tables takes forever.  That is apparently due to a convoluted indexing process in MySQL.  The workaround was found here: MySQL General Discussion List

It goes as follows:

1) create table T1 like T;This creates an empty table T1 with indexes ndx1,ndx2,ndx3 and ndx4.2) alter table T1 drop index ndx3;This drops index ndx3 on the empty T1, which should be instantaneous.3) insert into T1 select * from T;This will populate table T and load all three(3) indexes for T1 in one pass.4) drop table table T;5) alter table T1 rename to T;

An alternative ugly hack is to start the drop index, kill the database server.  That will crash the table on which the drop index was.  The crashed table can be recovered by running mysiamchk.