Muchas veces, durante el desarrollo, podemos querer eliminar las tablas de una base de datos MySQL, usualmente porque por diferentes motivos puede ser un proceso mucho más rápido y sencillo que re-crear la base.
El método que encontré en su momento (no reclamo autoría), es hacer un volcado de los datos con mysqldump, filtrar las sentencias DROP
, y luego ejecutarlas en una sesión de mysql.
En Windows:
"\ruta\a\mysqldump.exe" --add-drop-table --user root -p | find "DROP" | "\ruta\a\mysql.exe" --user root -p -D base_de_datos
Las rutas dependerán de dónde hayas instalado MySQL. base_de_datos
es, por supuesto, el nombre de la base. Con los modificadores -p
, tanto mysqldump como mysql pedirán la contraseña del usuario, que en el ejemplo es root
, pero se puede usar cualquier usuario con privilegios para hacer el DROP
de las tablas.
El mismo código, adaptado para la línea de comandos de un sistema UNIX:
mysqldump --add-drop-table --user root -p | grep DROP | mysql --user root -p -D base_de_datos
Activa Javascript para para cargar los comentarios, basados en DISQUS
El Blog de ElCodiguero funciona sobre Pelican