¿Cómo elimino una base de datos MySQL?

169

Puede notar en mi última pregunta que un problema causó más problemas, ¿ Leyendo los manuales de MySQL en el monitor de MySQL?

Mi base de datos ahora es inutilizable en parte debido a mi interés por romper cosas y mi incapacidad para mirar los mensajes de error. Sé que no debería reutilizar las claves primarias, pero me gustaría volver a utilizarlas después de eliminar la base de datos que había deteriorado. Entonces

¿Cómo puedo eliminar correctamente una base de datos MySQL?

Léo Léopold Hertz 준영
fuente

Respuestas:

296

Desde el indicador de MySQL:

mysql> drop database <db_name>;
rnicholson
fuente
34

Si su base de datos no se puede descartar, aunque no tenga errores tipográficos en la declaración y no se pierda ;el final, incluya el nombre de la base de datos entre comillas invertidas:

mysql> drop database `my-database`;

Los backticks son para bases de datos o columnas, los apóstrofes son para datos dentro de estos.

Para obtener más información, consulte esta respuesta a la pregunta de desbordamiento de pila. ¿ Cuándo usar comillas simples, comillas dobles y comillas invertidas? .

sjas
fuente
2
Gracias por esta respuesta, no funcionó para mí hasta que utilicé backticks.
tomsihap
Tuve que incluirlo en Windows. De lo contrario lo tengo You have an error in your SQL syntax;.
Amio.io
16

Si está utilizando un script SQL cuando está creando su base de datos y tiene algún usuario creado por su script, también debe eliminarlos. Por último, debe eliminar los usuarios; es decir, obligar a MySQL a leer los privilegios del usuario nuevamente.

-- DELETE ALL RECIPE

drop schema <database_name>;
-- Same as `drop database <database_name>`

drop user <a_user_name>;
-- You may need to add a hostname e.g `drop user bob@localhost`

FLUSH PRIVILEGES;

¡Buena suerte!

Ben
fuente
El SQL anterior no funciona en MySQL. (Tal vez esto de una versión antigua de mysql ??
Jacob
3
drop database <db_name>;
FLUSH PRIVILEGES;
anónimo
fuente
77
Vea su respuesta como se ve e intente formatear la respuesta correctamente editándola y no simplemente publique el código. Dé alguna explicación o información o uso sobre su código. Por ejemplo, vea esta respuesta .
Azik Abdullah
0

Necesitaba corregir los privilegios. REVOKE ALL PRIVILEGES ONregistros .* FROM 'root'@'root'; GRANT ALL PRIVILEGES ONregistros.* TO 'root'@'root'WITH GRANT OPTION;

DoesEatOats
fuente
-1

Si está trabajando en XAMPP y su consulta de caída de la base de datos no funciona, puede ir a la etiqueta de operaciones donde encuentra la columna (soltar la base de datos (soltar)), hacer clic en ese botón y su base de datos se eliminará.

Yusma Imtiaz
fuente
También puede encontrar la ubicación donde se almacena esa base de datos en Windows, utilizando xammp. Encuentre la ubicación donde está el directorio de datos mysql. Y luego bórralo. Por ejemplo, si su base de datos se llama registros, podría estar en: E: \ Archivos de programa \ xampp \ mysql \ data \ logs
DoesEatOats