Ibland kan du behöva ta bort databas i MySQL. Du kan enkelt göra detta med kommandot MySQL DROP DATABASE. Så här tar du bort databas i MySQL.
Hur man tar bort databas i MySQL
Här är stegen för att SLAPPA DATABAS i MySQL. Vi kommer att använda MySQL DROP DATABASE-frågan för att radera databasen.
Här är syntaxen för MySQL DROP DATABASE-kommandot
DROP DATABASE [IF EXISTS] database_name;
Vid framgångsrik exekvering kommer MySQL att returnera antalet raderade tabeller. I kommandot ovan, ersätt database_name med databasnamnet som du vill ta bort.
Om du försöker ta bort en databas som inte finns kommer MySQL att visa ett fel. Så det är tillrådligt att använda det valfria argumentet OM FINNS
I MySQL är databasen även känd som SCHEMA. Så du kan också använda DROP SCHEMA istället för DROP DATABASE.
DROP SCHEMA [IF EXISTS] database_name;
Bonus Läs:MySQL DROP TABLE
MySQL DROP DATABASE från kommandoraden
Här är ett exempel på hur man tar bort databas från kommandoraden. Du kan använda dem för att radera databaser från Ubuntu Linux CLI och andra linuxsystem.
Logga in på MySQL från kommandoraden. Vi använder kommandot SHOW DATABASES för att lista alla databaser som är tillgängliga för MySQL-användare.
mysql> show databases; +--------------------+ | Database | +--------------------+ | information_schema | | dashboard | | fedingo | | mysql | | performance_schema | | sample | | test | | test1 | | test2 | | test3 | | test4 | +--------------------+ 11 rows in set (0.00 sec)
Därefter använder vi MySQL DROP DATABASE-kommandot för att ta bort databas i MySQL
mysql> drop database test4; Query OK, 0 rows affected (0.33 sec)
Utdata visar "0 rader påverkade" eftersom det inte finns några tabeller i test4-databasen.
Bonus Läs:MySQL DROP COLUMN
Hur man släpper alla databaser i MySQL
Var försiktig innan du tar bort flera databaser i MySQL. Det går inte att vända. Som standard låter kommandot DROP DATABASE dig ta bort endast en databas åt gången. Så om du vill ta bort flera databaser i MySQL måste du köra ett separat kommando DROP DATABASE för varje databas.
Men om du har många databastabeller och tycker att det är tråkigt, så här är ett skript för att släppa alla 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 skriptet ovan, ersätt delarna i fetstil med ditt mysql-användarnamn och lösenord
Bonus Läs:Hur man får poster från idag i MySQL
Låt oss titta på vad varje rad gör
mysql -u<user> -p<password> -e "show databases"
kommer att logga in på MySQL och returnera en lista med databaser. Något liknande
Database information_schema my_db another_db api_platform mysql testdb joomla wordpress dev drupal
Första raden Databas är bara en sträng och inte ett databasnamn. Listan över databasnamn börjar från rad 2. Bland dem informationsschema är en systemdatabas och får inte raderas. Så vi tar bort dessa två rader från ovanstående utdata
| grep -v Database | grep -v mysql | grep -v information_schema
Slutligen använder vi gawk kommando för att gå igenom den filtrerade listan med databasnamn, generera och köra MySQL DROP DATABASE-kommandon för varje databasnamn i listan.
Ubiq gör det enkelt att visualisera data på några minuter och övervaka i realtidsinstrumentpaneler. Prova det idag!