Mysql
 sql >> Database >  >> RDS >> Mysql

DATABASE DROP MySQL

A volte potrebbe essere necessario eliminare il database in MySQL. Puoi farlo facilmente usando il comando MySQL DROP DATABASE. Ecco come eliminare il database in MySQL.

Come eliminare il database in MySQL

Ecco i passaggi per DROP DATABASE in MySQL. Useremo la query MySQL DROP DATABASE per eliminare il database.

Ecco la sintassi del comando MySQL DROP DATABASE

DROP DATABASE [IF EXISTS] database_name;

Al termine dell'esecuzione, MySQL restituirà il numero di tabelle eliminate. Nel comando precedente, sostituisci database_name con il nome del database che desideri eliminare.

Se si tenta di eliminare un database che non esiste, MySQL mostrerà un errore. Quindi è consigliabile utilizzare l'argomento opzionale SE ESISTE

In MySQL, il database è anche noto come SCHEMA. Quindi puoi anche usare DROP SCHEMA invece di DROP DATABASE.

DROP SCHEMA [IF EXISTS] database_name;

Bonus Leggi:MySQL DROP TABLE

MySQL DROP DATABASE dalla riga di comando

Ecco un esempio di come eliminare il database dalla riga di comando. Puoi usarli per eliminare il database dalla CLI di Ubuntu Linux e altri sistemi Linux.

Accedi a MySQL dalla riga di comando. Usiamo il comando SHOW DATABASES per elencare tutti i database disponibili per l'utente 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)

Successivamente, utilizziamo il comando MySQL DROP DATABASE per eliminare il database in MySQL

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

L'output mostra "0 righe interessate" poiché non ci sono tabelle nel database test4.

Bonus Leggi:MySQL DROP COLUMN

Come eliminare tutti i database in MySQL

Fai attenzione prima di eliminare più database in MySQL. Non può essere annullato. Per impostazione predefinita, il comando DROP DATABASE consente di eliminare solo 1 database alla volta. Quindi, se vuoi eliminare più database in MySQL, devi eseguire un comando DROP DATABASE separato per ogni database.

Tuttavia, se hai molte tabelle di database e lo trovi noioso, ecco uno script per eliminare tutti i database.

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>

Nello script sopra, sostituisci le parti in grassetto con il tuo nome utente e password mysql

Bonus Lettura:come ottenere record da oggi in MySQL

Diamo un'occhiata a cosa fa ogni riga

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

accederà a MySQL e restituirà un elenco di database. Qualcosa come

Database
information_schema
my_db
another_db
api_platform
mysql
testdb
joomla
wordpress
dev
drupal

La prima riga Database è solo una stringa e non un nome di database. L'elenco dei nomi dei database inizia dalla riga 2. Tra questi, schema_informativo è un database di sistema e non deve essere eliminato. Quindi rimuoviamo queste 2 righe dall'output sopra

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

Infine, utilizziamo gawk comando per scorrere l'elenco filtrato di nomi di database, generare ed eseguire comandi MySQL DROP DATABASE per ciascun nome di database nell'elenco.

Ubiq semplifica la visualizzazione dei dati in pochi minuti e il monitoraggio in dashboard in tempo reale. Provalo oggi!