PostgreSQL Удаление базы данных с помощью командной строки

⚡ Умное резюме

PostgreSQL Команда DROP DATABASE навсегда удаляет базу данных, включая все записи каталога и файлы данных. Вы можете запустить её из оболочки psql, удалить базу данных визуально в pgAdmin или использовать команду dropdb для удалённого удаления базы данных.

  • ⚠️ Постоянные меры: Команда DROP DATABASE удаляет все записи каталога и каталог данных, поэтому эту операцию нельзя отменить.
  • 🔒 Только для владельцев: Удалить её может только владелец базы данных, и к целевой базе данных нельзя подключить активные сессии.
  • 💻 SQL Shell: В psql после подключения к другой базе данных выполните команду DROP DATABASE name, а затем используйте символ \l для подтверждения удаления.
  • 🛡️ Пункт «ЕСЛИ СУЩЕСТВУЕТ»: Добавление условия IF EXISTS приводит к предупреждению вместо ошибки, если база данных не существует.
  • 🇧🇷 Графический интерфейс pgAdmin: Щелкните правой кнопкой мыши по базе данных в дереве объектов, выберите «Удалить/Удалить» и подтвердите удаление, чтобы оно отобразилось визуально.
  • 🌐 Команда dropdb: Утилита командной строки dropdb позволяет удаленно удалить базу данных, выбрав параметры для хоста, порта и подтверждения.

PostgreSQL УДАЛЕНИЕ/УДАЛИТЬ БАЗУ ДАННЫХ

Перетащите базу данных в PostgreSQL

УДАЛИТЬ БАЗУ ДАННЫХ in PostgreSQL — это заявление о безвозвратном удалении всех записей каталога и каталога данных. Владелец базы данных может только выполнить эту команду. Его нельзя выполнить, пока кто-то подключен к целевой базе данных. Вам необходимо подключиться к другой базе данных, чтобы выполнить команду DROP DATABASE.

Поэтому при выполнении этой операции следует быть особенно осторожным.

PostgreSQL ПЕРЕДАЧА БАЗЫ ДАННЫХ Синтаксис:

DROP DATABASE [IF EXISTS] name;

Здесь:-

  • ЕСЛИ СУЩЕСТВУЕТ: это необязательный параметр. В случае, если база данных не существует, вместо ошибки отображается предупреждение.
  • имя: укажите имя БД, которую вы хотите удалить.

Посмотрим PostgreSQL пример командной строки удаления базы данных в действии

PostgreSQL Удаление базы данных с помощью оболочки SQL (командная строка)

Ниже приведен пошаговый процесс удаления базы данных в командной строке Postgres:

Шаг 1) Используйте команду \l, чтобы определить доступную в данный момент базу данных.

PostgreSQL Удаление базы данных с помощью оболочки SQL

Шаг 2) Чтобы удалить базу данных в Postgres, введите команду

drop database guru99

Используйте команду \l, чтобы проверить, удалена ли БД.

PostgreSQL Удаление базы данных с помощью оболочки SQL

Шаг 3) Попробуйте удалить ту же базу данных еще раз, вы получите ошибку.

PostgreSQL Удаление базы данных с помощью оболочки SQL

Шаг 4) Удалите базу данных с помощью предложения IF существует, и вы получите предупреждение.

drop database IF EXISTS guru99

PostgreSQL Удаление базы данных с помощью оболочки SQL

PostgreSQL Удалить базу данных PgAdmin (графический интерфейс пользователя)

Шаг 1) Щелкните правой кнопкой мыши базу данных «guru99» и выберите «Удалить/Удалить».

PostgreSQL Удалить базу данных PgAdmin

Шаг 2) Нажмите «ОК» во всплывающем окне подтверждения.

PostgreSQL Удалить базу данных PgAdmin

База данных удалена.

команда dropdb

Команда dropdb позволяет удалить базу данных в PostgreSQL удаленно. Но для использования пользователь должен быть владельцем базы данных. PostgreSQL Команда удаления базы данных, чтобы удалить эту базу данных.

Синтаксис:

dropdb [option...] dbname
Опция Описание
-e Эхо-команды, которые dropdb создает и отправляет на сервер.
-i Отображение запроса на проверку перед выполнением любой разрушительной работы.
-V Используйте эту опцию, чтобы распечатать версию dropdb.
-Помогите Предоставьте помощь с аргументами командной строки dropdb.
-h хост Помогает указать имя хоста системы, на которой в данный момент работает сервер.
-p порт Эта опция позволяет указать TCP-порт или расширение файла сокета локального домена Unix, через который сервер устанавливает соединения.
–если-существует В случае отсутствия базы данных вместо ошибки выводится уведомление.
-U имя пользователя Имя пользователя для подключения.
-w Используйте эту опцию, если вы не хотите, чтобы запрос пароля
-W Используйте этот параметр, чтобы запросить пароль перед сбросом.ping база данных.
–maintenance-db=dbname Задает имя базы данных, к которой нужно подключиться, чтобы удалить целевую базу данных.

PostgreSQL Пример удаления базы данных

Мы хотим уничтожить базу данных guru99 с помощью сервера на хосте rome, порт 4565, с проверкой, и вам нужно использовать следующую команду drop database PostgreSQL команда:

dropdb -p 4565 -h rome -i -e guru99

База данных «guru99» будет удалена без возможности восстановления.

Вы уверены? (да/нет) если вы выберете y, то вы сможете

СБРОСИТЬ БАЗУ ДАННЫХ гуру99;

Часто задаваемые вопросы (FAQ)

Нет. Команда DROP DATABASE безвозвратно удаляет каталог данных, поэтому встроенной функции отмены нет. Восстановление возможно только при наличии предварительной резервной копии, файла дампа или конфигурации восстановления на определенный момент времени, созданной до удаления базы данных.

Эта ошибка означает, что активные сессии подключены. Отключите их или запустите pg_terminate_backend() для их идентификаторов процессов из другой базы данных, а затем повторите попытку удаления базы данных. Вы не можете удалить базу данных, к которой в данный момент подключены.

DROP DATABASE — это SQL-запрос, выполняемый в psql или pgAdmin. dropdb — это утилита командной строки, которая позволяет удаленно удалить базу данных, указав хост, порт и запрос подтверждения.

Искусственный интеллект может сгенерировать правильную команду DROP DATABASE или dropdb, напомнить о необходимости предварительного резервного копирования и добавить условие IF EXISTS. Он также может перечислить активные соединения, которые необходимо закрыть перед удалением.ping.

Искусственный интеллект не может восстановить удаленные данные, но он может помочь вам восстановить данные из резервной копии или файла дампа, а также составить план восстановления на определенный момент времени, чтобы предотвратить случайную потерю данных в будущем.

Подведем итог этой публикации следующим образом: