Puedes usar information_schema para encontrar nombres de tablas e incluso formatear los resultados como un montón de DROP declaraciones.
SELECT CONCAT('DROP TABLE ', TABLE_NAME, '; ')
FROM information_schema.tables
WHERE table_schema = DATABASE() AND table_name NOT IN ('foo', 'bar', 'baz');
(La DATABASE() la función devuelve el use actual 'd base de datos.)
Usando PREPARE y EXECUTE , incluso podría evitar copiar y pegar y (en MySQL 5.0.13 y versiones posteriores) escribir un procedimiento almacenado para hacerlo.