外部キーは、それが定義されている列の名前ではなく、制約名で削除する必要があります。
大丈夫ではない:
mysql> ALTER TABLE `articles` DROP FOREIGN KEY `pubsrc_id`;
ERROR 1091 (42000): Can't DROP 'pubsrc_id'; check that column/key exists
わかりました:
mysql> ALTER TABLE `articles` DROP FOREIGN KEY `pub_articles_ibfk_1`;
Query OK, 0 rows affected (0.03 sec)