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

MySQL DROP DATABASE

Nogle gange skal du muligvis slette databasen i MySQL. Du kan nemt gøre dette ved at bruge MySQL DROP DATABASE-kommandoen. Sådan sletter du databasen i MySQL.

Sådan sletter du database i MySQL

Her er trinene til DROP DATABASE i MySQL. Vi vil bruge MySQL DROP DATABASE-forespørgsel til at slette databasen.

Her er syntaksen for MySQL DROP DATABASE-kommandoen

DROP DATABASE [IF EXISTS] database_name;

Ved vellykket udførelse vil MySQL returnere antallet af slettede tabeller. I ovenstående kommando skal du erstatte databasenavn med det databasenavn, du vil slette.

Hvis du forsøger at slette en database, der ikke eksisterer, vil MySQL vise en fejl. Så det er tilrådeligt at bruge det valgfrie argument HVIS EKSISTERER

I MySQL er databasen også kendt som SCHEMA. Så du kan også bruge DROP SCHEMA i stedet for DROP DATABASE.

DROP SCHEMA [IF EXISTS] database_name;

Bonus Læs:MySQL DROP TABEL

MySQL DROP DATABASE fra kommandolinjen

Her er et eksempel på, hvordan du sletter databasen fra kommandolinjen. Du kan bruge dem til at slette database fra Ubuntu Linux CLI og andre linux-systemer.

Log ind på MySQL fra kommandolinjen. Vi bruger kommandoen SHOW DATABASES til at liste alle databaser, der er tilgængelige for MySQL-brugere.

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

Dernæst bruger vi MySQL DROP DATABASE-kommandoen til at slette databasen i MySQL

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

Outputtet viser '0 berørte rækker', da der ikke er nogen tabeller i test4-databasen.

Bonus Læs:MySQL DROP COLUMN

Sådan dropper du alle databaser i MySQL

Vær forsigtig, før du sletter flere databaser i MySQL. Det kan ikke vendes. Som standard giver kommandoen DROP DATABASE dig mulighed for kun at slette 1 database ad gangen. Så hvis du vil slette flere databaser i MySQL, skal du køre en separat DROP DATABASE-kommando for hver database.

Men hvis du har mange databasetabeller og synes det er kedeligt, så er her et script til at droppe alle databaser.

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>

I ovenstående script skal du erstatte delene med fed skrift med dit mysql-brugernavn og adgangskode

Bonus Læs:Sådan får du poster fra i dag i MySQL

Lad os se på, hvad hver linje gør

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

vil logge på MySQL og returnere en liste over databaser. Noget lignende

Database
information_schema
my_db
another_db
api_platform
mysql
testdb
joomla
wordpress
dev
drupal

Den første linje Database er kun en streng og ikke et databasenavn. Listen over databasenavne begynder fra linje 2. Blandt dem informationsskema er en systemdatabase og må ikke slettes. Så vi fjerner disse 2 linjer fra ovenstående output

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

Til sidst bruger vi gawk kommando til at gå gennem den filtrerede liste over databasenavne, generere og køre MySQL DROP DATABASE-kommandoer for hvert databasenavn på listen.

Ubiq gør det nemt at visualisere data på få minutter og overvåge i dashboards i realtid. Prøv det i dag!

  1. Få id for en indsættelse i samme erklæring

  2. Sådan opretter du en krydstabuleringsforespørgsel i designvisning i Access

  3. Hvad er MariaDB? Hvordan virker MariaDB?

  4. Sådan installeres Cassandra v3 på CentOS 6