GNU/Linux >> Znalost Linux >  >> Ubuntu

PostgreSQL Drop databáze s příklady

Úvod

PostgreSQL nabízí dvě metody příkazového řádku pro zrušení databáze – pomocí DROP DATABASE příkaz nebo obslužný program shellu.

Odstranění nepoužívaných databází je dobrou praxí a pomáhá udržovat pracovní prostor čistý. Mějte však na paměti, že smazáním existující databáze PostgreSQL odstraníte všechny položky katalogu a data pro tuto databázi.

Pokračujte ve čtení a zjistěte, jak zrušit databázi v PostgreSQL.

Předpoklady

  • Nainstalovaný a nakonfigurovaný PostgreSQL 10 nebo vyšší (postupujte podle našeho průvodce pro Ubuntu nebo Windows; pokud je již nainstalován, zkontrolujte verzi PostgreSQL v systému).
  • Přístup k terminálu s právy sudo.

Prohlášení DROP DATABASE

Důležité :Smazat databázi může POUZE vlastník databáze.

První metodou, jak odstranit databázi PostgreSQL, je použít následující příkaz SQL:

DROP DATABASE <database name>;

Příkaz odstraní adresář obsahující databázové informace a položky katalogu. Pouze vlastník databáze může spustit DROP DATABASE příkaz. Pokud někdo aktuálně používá databázi, příkaz se nespustí.

Chcete-li zjistit, jak DROP DATABASE funguje, proveďte následující:

1. Otevřete terminál (CTRL +ALT +T ).

2. Připojte se k PostgreSQL:

sudo -i -u postgres psql

3. Vytvořte databázi pro příklad:

CREATE DATABASE example;

Terminál vytiskne provedený příkaz.

4. Seznam všech databází s:

\l

V seznamu se zobrazí databáze z předchozího kroku.

5. Zrušte databázi pomocí:

DROP DATABASE example;

Výstup zobrazuje provedený příkaz.

6. Vypište znovu všechny databáze:

\l

Vzorová databáze se již nezobrazuje v seznamu.

Jestli existuje

IF EXISTS možnost je otevřena pro všechny verze, kde je DROP DATABASE je k dispozici. Úplná syntaxe příkazu s IF EXISTS možnost je následující:

DROP DATABASE IF EXISTS <database name>;

Volba nejprve zkontroluje, zda databáze existuje, než ji smaže. Pokud databáze existuje, příkaz databázi zruší. Pokud však databáze neexistuje, příkaz vytiskne informativní zprávu.

Chcete-li otestovat, jak příkaz funguje, postupujte podle následujících kroků:

1. Vytvořte ukázkovou databázi:

CREATE DATABASE example;

2. Zrušte databázi pomocí IF EXISTS možnost:

DROP DATABASE IF EXISTS example;

Výsledek je stejný jako při použití DROP DATABASE pokud databáze existuje.

3. Databáze již není dostupná. Spusťte příkaz znovu, abyste viděli výstup:

DROP DATABASE IF EXISTS example;

Vytiskne se zpráva oznamující, že databáze neexistuje.

4. Chcete-li vidět rozdíl mezi použitím IF EXISTS a vynecháte-li volbu, spusťte následující příkaz:

DROP DATABASE example;

Pomocí DROP DATABASE bez IF EXISTS volba na neexistující databázi vyvolá chybovou zprávu.

S (SILU)

WITH (FORCE) možnost je k dispozici v PostgreSQL verze 13 a vyšší.

DROP DATABASE metoda neodstraní databázi, pokud se používá. Pokud je databáze používána, terminál vypíše chybu, že relace databáze je otevřená.

Přidejte WITH (FORCE) možnost násilně ukončit relaci a odstranit databázi:

DROP DATABASE <database name> WITH (FORCE);

Pokud je to možné, Postgres zavře relaci uživatele a násilně smaže databázi.

Nástroj dropdb

Obslužný program prostředí dropdb je obal pro DROP DATABASE příkaz. Ve skutečnosti jsou obě metody totožné. Dropdb však nabízí další možnosti včetně vzdáleného odebrání databází.

Základní syntaxe je:

dropdb <connection parameters> <options> <database name>

Možnosti

Níže uvedená tabulka ukazuje všechny možné možnosti při použití nástroje dropdb.

Možnost Typ Popis
-e
--echo
Možnost Vytiskne příkazy, které dropdb posílá na server.
-f
--force
Možnost Pokusí se ukončit všechna aktuální připojení před zrušením databáze.
-i
--interactive
Možnost Vyzve k ověření před provedením odstranění databáze.
-V
--version
Možnost Konzola vytiskne verzi nástroje.
--if-exists Možnost Pokud databáze neexistuje, vytiskne místo chyby upozornění.
-?
--help
Možnost Zobrazit nabídku nápovědy.
-h <host>
--host=<host>
Parametr připojení Určuje název hostitele počítače, na kterém běží server.
-p <port>
--port=<port>
Parametr připojení Určuje port TCP, na kterém server naslouchá.
-U <username>
--username  <username>
Parametr připojení Připojte se jako určený uživatel.
-w
--no-password
Parametr připojení Nikdy nevystavujte výzvu k zadání hesla. Užitečné pro dávkové a skriptové úlohy, když není přítomen žádný uživatel.
-W
--password
Parametr připojení Vynutit výzvu k zadání hesla. Bez této možnosti server ztratí pokus o připojení, pokud je nutné heslo.
--maintenance-db=<database name> Parametr připojení Volba určuje připojení názvu databáze.

Zkuste například následující příkaz, abyste viděli, jak dropdb funguje s -i a -e možnosti:

dropdb -i -e example

Program před smazáním požaduje potvrzení kvůli -i tag.

Stiskněte y potvrdit. Program vytiskne vygenerované příkazy na server. Protože databáze neexistuje, program vyvolá chybu a ukončí se.


Ubuntu
  1. Příkaz Nohup s příklady

  2. JQ Command v Linuxu s příklady

  3. Databázový server PostgreSQL

  1. Linux Source Command s příklady

  2. wc Linux Command s příklady

  3. Jak vytvořit databázi v PostgreSQL

  1. Jak nainstalovat PostgreSQL na Ubuntu 20.04

  2. Linux ip příkaz s příklady

  3. Příkaz Netcat (nc) s příklady