Es existiert kein MySQL-Befehl mit dem man auf einen Schlag alle Tabellen einer MySQL Datenbank löschen kann, aber es gibt mehrere Workarounds für dieses Problem. Mit einem einfachen
DROP DATABASE zuleerendedatenbank; CREATE DATABASE zuleerendedatenbank;
kann man auf einfache und schnelle Weise die Datenbank leeren. Diese Vorgehensweise hat allerdings einige kleine Nachteile. Zum Einen benötigt man hierfür das Recht die Datenbank zu löschen bzw. auch wieder neu anzulegen (was in Hostingprovider-Umgebungen eher selten gegeben ist) zum Anderen wird wirklich die komplette Datenbank gelöscht und neu erstellt was natürlich auch sämtliche Einstellungen die man auf Datenbankebene getätigt hat (z.B. Zeichensatzeinstellungen der Datenbank) wieder auf default zurück setzt. Eine Möglichkeit das zu umgehen hat man mit folgendem Einzeiler
mysqldump -ubenutzer -ppasswort --no-data --add-drop-table zuleerendedatenbank | grep DROP | mysql -ubenutzer -ppasswort zuleerendedatenbank
bei dem man einfach mit mysqldump einen Datenbankdump mit DROP TABLE Anweisungen (–add-drop-table) und ohne Tabelleninhalte (–no-data) zieht und alle Zeilen die mit DROP beginnen mit mysql wieder an die Datenbank sendet.