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!