sql >> Base de Datos >  >> RDS >> Mysql

MySQL DROP BASE DE DATOS

A veces es posible que deba eliminar la base de datos en MySQL. Puede hacer esto fácilmente usando el comando MySQL DROP DATABASE. Aquí se explica cómo eliminar la base de datos en MySQL.

Cómo eliminar una base de datos en MySQL

Estos son los pasos para DROP DATABASE en MySQL. Usaremos la consulta MySQL DROP DATABASE para eliminar la base de datos.

Esta es la sintaxis del comando MySQL DROP DATABASE

DROP DATABASE [IF EXISTS] database_name;

En una ejecución exitosa, MySQL devolverá la cantidad de tablas eliminadas. En el comando anterior, reemplace nombre_base_datos con el nombre de la base de datos que desea eliminar.

Si intenta eliminar una base de datos que no existe, MySQL mostrará un error. Por lo que es recomendable utilizar el argumento opcional SI EXISTE

En MySQL, la base de datos también se conoce como SCHEMA. Entonces también puede usar DROP SCHEMA en lugar de DROP DATABASE.

DROP SCHEMA [IF EXISTS] database_name;

Lectura adicional:MySQL DROP TABLE

MySQL DROP DATABASE desde la línea de comandos

Aquí hay un ejemplo de cómo eliminar la base de datos desde la línea de comandos. Puede usarlos para eliminar la base de datos de la CLI de Ubuntu Linux y otros sistemas Linux.

Inicie sesión en MySQL desde la línea de comandos. Usamos el comando SHOW DATABASES para enumerar todas las bases de datos disponibles para el usuario de MySQL.

mysql> show databases;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| dashboard          |
| fedingo            |
| mysql              |
| performance_schema |
| sample             |
| test               |
| test1              |
| test2              |
| test3              |
| test4              |
+--------------------+
11 rows in set (0.00 sec)

A continuación, usamos el comando MySQL DROP DATABASE para eliminar la base de datos en MySQL

mysql> drop database test4;
Query OK, 0 rows affected (0.33 sec)

El resultado muestra '0 filas afectadas' ya que no hay tablas en la base de datos test4.

Lectura adicional:MySQL DROP COLUMN

Cómo descartar todas las bases de datos en MySQL

Tenga cuidado antes de eliminar varias bases de datos en MySQL. No se puede revertir. De manera predeterminada, el comando DROP DATABASE le permite eliminar solo 1 base de datos a la vez. Entonces, si desea eliminar varias bases de datos en MySQL, debe ejecutar el comando DROP DATABASE por separado para cada base de datos.

Sin embargo, si tiene muchas tablas de bases de datos y lo encuentra tedioso, aquí hay una secuencia de comandos para eliminar todas las bases de datos.

mysql -u<user> -p<password> -e "show databases" | 
grep -v Database | grep -v mysql | grep -v information_schema | 
gawk '{print "SET FOREIGN_KEY_CHECKS = 0;drop database
" $1 ";select sleep(0.1);"}' | mysql -u<user> -p<password>

En el script anterior, reemplace las partes en negrita con su nombre de usuario y contraseña mysql

Lectura adicional:Cómo obtener registros de hoy en MySQL

Veamos lo que hace cada línea

mysql -u<user> -p<password> -e "show databases"

iniciará sesión en MySQL y devolverá una lista de bases de datos. Algo como

Database
information_schema
my_db
another_db
api_platform
mysql
testdb
joomla
wordpress
dev
drupal

La primera línea Base de datos es solo una cadena y no un nombre de base de datos. La lista de nombres de bases de datos comienza en la línea 2. Entre ellos, information_schema es una base de datos del sistema y no debe eliminarse. Entonces eliminamos estas 2 líneas de la salida anterior

| grep -v Database | grep -v mysql | grep -v information_schema

Finalmente, usamos gawk comando para recorrer la lista filtrada de nombres de bases de datos, generar y ejecutar comandos MySQL DROP DATABASE para cada nombre de base de datos en la lista.

Ubiq facilita la visualización de datos en minutos y la supervisión en paneles en tiempo real. ¡Pruébalo hoy!