Как удалить базу данных postgresql ubuntu
Обновлено: 21.11.2024
Если вы используете PostgreSQL, в какой-то момент вам может потребоваться удалить пакет из вашей системы. Важно знать, как правильно удалить PostgreSQL, чтобы убедиться, что все компоненты пакета полностью удалены и вы не столкнулись с какими-либо ошибками. В этой статье мы объясним, как удалить PostgreSQL из операционных систем Linux, macOS и Windows.
ПРИМЕЧАНИЕ. Обязательно повысьте привилегии для любой из команд в этой статье с помощью sudo, если терминал возвращает ошибку «Отказано в доступе».
Удаление и удаление PostgreSQL в Debian Linux
Команду apt-get можно использовать для полного удаления PostgreSQL из дистрибутива Linux на базе Debian, такого как Linux Mint или Ubuntu:
sudo apt-get --purge удалить postgresql
sudo apt-get очистить postgresql *
sudo apt-get --purge удалить postgresql postgresql-doc postgresql-common
Grep для всех пакетов PostgreSQL в Debian Linux
Вы можете использовать команду dpkg для управления пакетами Debian в сочетании с grep для поиска всех имен установленных пакетов, содержащих подстроку postgres . Пример этой команды показан ниже:
Наконец, обязательно используйте команду --purge remove репозитория APT-GET, за которой следует имя пакета postgres. Эта команда удалит пакет и все связанные с ним данные:
Удалить все данные и каталоги PostgreSQL
Используйте команду rm с параметрами -rf, чтобы рекурсивно удалить все каталоги и данные для пакетов postgresql:
sudo rm -rf / var / lib / postgresql /
sudo rm -rf / var / log / postgresql /
sudo rm -rf / etc / postgresql /
После завершения команд rm выполните команду dpkg -l | команда grep postgres еще раз, чтобы убедиться, что все пакеты были удалены.
Удаление и удаление пакетов PostgreSQL в Fedora Linux
Вы можете использовать команду yum репозитория YUM для удаления PostgreSQL в дистрибутивах Linux на основе Fedora, таких как Red Hat или CentOS:
Чтобы использовать подстановочный знак ( * ) для удаления всех пакетов с именами, начинающимися с postgres , используйте следующую команду:
Не забудьте также удалить каталог pgsql:
ПРИМЕЧАНИЕ. Имейте в виду, что sudo по умолчанию не включен для пользователей RHEL. Вместо этого используйте команду su (сменить пользователя), чтобы войти в систему как root и при необходимости выполнить приведенные выше команды с повышенными привилегиями.
Grep для пакетов PostgreSQL в Fedora с использованием «rpm»
Вы можете использовать команду rpm с параметрами -qa для поиска любых пакетов, которые содержат «postgres» в своем имени:
Если вы предпочитаете, вы также можете сократить поиск до чего-то вроде поста:
Вы также можете использовать grep в сочетании с командой YUM list, чтобы получить список всех экземпляров пакетов PostgreSQL:
Удалите пакет PostgreSQL с помощью YUM remove
Найдя пакет, используйте команду удаления YUM, чтобы удалить PostgreSQL из вашей системы Linux:
Перейдите в назначенный каталог для данных PostgreSQL, а затем используйте команду rm для удаления всех ваших баз данных и таблиц.
Удалить и удалить PostgreSQL из Windows
Если вы используете Windows, введите удалить или удалить в строке поиска в нижней левой части экрана:
Затем следуйте инструкциям по удалению, обязательно выбрав вариант «Все компоненты» при появлении запроса.
Вы увидите всплывающее сообщение примерно такого содержания: Каталог данных s(C:\Program Files\PostgreSQL\11\data) не был удален . Просто нажмите «ОК», чтобы закрыть всплывающее окно, и не выбирайте вариант перезагрузки компьютера.
Удалить папку данных для PostgreSQL в Windows
После завершения процесса удаления, описанного в предыдущем разделе, откройте Проводник для Windows и перейдите в папку данных. Щелкните правой кнопкой мыши папку данных и нажмите кнопку Удалить. Обязательно очистите корзину после этого, чтобы убедиться, что все конфиденциальные данные были правильно удалены.
После того, как все данные будут удалены, вам следует перезапустить Windows 10.
Удаление и удаление PostgreSQL в macOS
Чтобы удалить PostgreSQL в macOS, откройте новый экземпляр Finder и перейдите в каталог Applications. Найдите папку PostgreSQL и перетащите ее содержимое в папку приложения «Корзина» в macOS.
Удалить данные PostgreSQL в терминале в macOS
После удаления папки PostgreSQL откройте папку «Утилиты» в окне Finder, а затем откройте приложение «Терминал».
Используйте команду cd, чтобы перейти в каталог PostgreSQL. Вы можете сделать это, введя путь к каталогу в командной строке терминала и нажав клавишу Return:
Затем используйте команду rm -rf, чтобы удалить каталог и его содержимое:
Не забудьте очистить содержимое приложения "Корзина", когда закончите.
Удалите установку PostgreSQL Homebrew на macOS
Вы можете использовать команду brew в окне терминала macOS, чтобы удалить версию PostgreSQL Homebrew. Сначала используйте команду list, чтобы вернуть все приложения, установленные с помощью Homebrew:
Затем используйте следующую команду, чтобы принудительно удалить установку Homebrew postgresql:
Заключение
Если вам нужно удалить PostgreSQL, важно сделать это аккуратно и тщательно. Использование ярлыков в процессе удаления может привести к тому, что конфиденциальные данные останутся на вашем компьютере. В этой статье мы объяснили, как удалить и удалить PostgreSQL из Windows, Linux и macOS. С пошаговыми инструкциями, подробно описанными в этом руководстве, вы будете готовы удалить PostgreSQL с любого из ваших компьютеров.
Протестируйте платформу ObjectRocket бесплатно!
Попробуйте полностью управляемые CockroachDB, Elasticsearch, MongoDB, PostgreSQL (бета-версия) или Redis.
У меня ubuntu 9.10 (karmic), и когда я попытался установить новую программу, postgres был установлен как зависимость от этой программы, никаких проблем, если установка прошла успешно, но произошла ошибка, и Postgres не был установлен и приложение не работает. Я пытался обновить Postgres и ничего, только сообщение "произошла ошибка, и ваш postgres не может быть установлен"
Теперь я хочу полностью удалить Postgres с моей машины, как мне это сделать, я не хочу убивать процесс при каждой загрузке. Я просто хочу удалить Postgres.
Что такое командная строка?
5 ответов 5
Самый простой способ сделать это — открыть терминал и ввести:
Также вам будет предложено удалить это программное обеспечение, которое зависит от Postgres, что в данном случае, похоже, вы хотели бы сделать.
Я лично не запускаю 9.10 или Postgres, поэтому возможно, что Postgres устанавливается в несколько частей. В этом случае просто:
Вы получите список тех пакетов, которые установил Postgres. Затем просто используйте ту же команду «apt-get --purge remove .», но вместо просто postgresql введите имя каждого пакета, разделенное пробелами, например:
Конечно, это зависит от списка установленных пакетов.
Я запускаю командную строку --> sudo apt-get --purge remove postgresql и похоже, что он был удален из моей ubuntu. Я жду обновления, всегда при обновлении postgres показывает ошибку. все равно спасибо.
Я думал, что это правильно. Но сегодня я снова получил такое же предупреждение, сбой системы, что-то попытался обновить postgres, но этого не произошло, затем отчет о сбое показал себя .. какие-то предложения? еще раз спасибо.
Шаги, которые помогли мне удалить postgres 8.3 в Ubuntu 8.04.2
Список всех пакетов, связанных с Postgres
Удалить все вышеперечисленное
Удалить следующие папки
Удалите пользователя postgres:
Спасибо! но я больше не использую ubuntu. Сейчас сижу на опенсусе и центосе. В любом случае спасибо, если у меня снова возникнут проблемы с postgres, ваш ответ будет полезен.
+1 за шаг 3 здесь. Это было ключевым для меня. Пытался удалить пакеты несколько раз, но в /var/lib/postgresql и /etc/postgresql оставался мусор, который приводил к сбою последующих операций после переустановки.
Одна из команд для полного удаления postgresql в терминале — sudo apt-get --purge remove postgresql\* . Обратите внимание, что эта команда удалит postgresql и все его компоненты.
Следуйте командам:
- sudo apt-get --purge удалить postgresql
Список всех пакетов, связанных с postgres:
удалите все перечисленные выше пакеты с помощью команды:
- apt-get --purge удалить пакет1 пакет2 ..
Подтвердите удаление всех файлов и папок, связанных с postgres/postgresql, с помощью команды:
Удалите все файлы и папки из списка с помощью команды rm.
Удалите пользователя postgres с помощью команды:
Благодарю Code Friendly и хочу поделиться тем, как я решил свою проблему.
Когда я обновлял postgresql из приложения Synaptic, была установлена версия postgresql 10. Итак, у меня было две версии postgresql (10 и 9.6), установленные на моем компьютере с Debian. Postgresql 9.6 прослушивает порт 5432. Postgresql 10 прослушивает порт 5433 вместо 5432.
Когда я запускаю команду msfconsole в терминале, несмотря на то, что metasploit подключается к базе данных msf через порт 5432, появляется следующее сообщение об ошибке:
Я удалил версию postgresql 9.6 из приложения Synaptic, но проблема осталась (postgresql 9.6 больше не отображается в списке установленных программ synaptic);
Но, выполнив следующую команду, мы увидим, что версия postgresql 9.6 не была удалена полностью:
Затем я отредактировал файл /etc/postgresql/10/main/postgresql.conf , изменил номер порта на 5432, и проблема решена.
Появляется другое сообщение об ошибке:
Я обнаружил, что причина в том, что на моем компьютере с Debian установлены две (2) версии Ruby, версии (2.2 и 2.3).
То же самое, я удаляю версию ruby 2.2 из приложения synaptic, и проблема решена, metasploit запускается без проблем.
Вывод: в этом руководстве вы узнаете, как использовать оператор PostgreSQL DROP DATABASE для удаления базы данных.
Введение в оператор PostgreSQL DROP DATABASE
Если база данных больше не нужна, ее можно удалить с помощью инструкции DROP DATABASE.
Следующее иллюстрирует синтаксис оператора DROP DATABASE:
Чтобы удалить базу данных:
- Укажите имя базы данных, которую вы хотите удалить, после предложения DROP DATABASE.
- Используйте IF EXISTS, чтобы предотвратить ошибку при удалении несуществующей базы данных. Вместо этого PostgreSQL выдаст уведомление.
Инструкция DROP DATABASE безвозвратно удаляет записи каталога и каталог данных. Это действие нельзя отменить, поэтому используйте его с осторожностью.
Только суперпользователи и владелец базы данных могут выполнять оператор DROP DATABASE. Кроме того, вы не можете выполнить инструкцию DROP DATABASE, если к базе данных все еще есть активные соединения. В этом случае вам необходимо отключиться от базы данных и подключиться к другой базе данных, например, к postgres, чтобы выполнить оператор DROP DATABASE.
PostgreSQL также предоставляет служебную программу dropdb, которая позволяет удалить базу данных. Программа dropdb выполняет оператор DROP DATABASE за кулисами.
1) Удалить базу данных с активными подключениями
Чтобы удалить базу данных с активными подключениями, выполните следующие действия:
Сначала найдите действия, связанные с базой данных, запросив представление pg_stat_activity:
Во-вторых, разорвите активные подключения, выполнив следующий запрос:
Обратите внимание: если вы используете PostgreSQL версии 9.1 или более ранней, используйте столбец procpid вместо столбца pid, поскольку PostgreSQL изменил столбец procid на столбец pid, начиная с версии 9.2
В-третьих, выполните оператор DROP DATABASE:
Примеры DROP DATABASE для PostgreSQL
Для демонстрации мы будем использовать базы данных, созданные в руководстве по созданию базы данных PostgreSQL.
Если вы еще не создали эту базу данных, для ее создания можно использовать следующие операторы CREATE DATABASE:
1) Удаление базы данных без активного примера подключения
Чтобы удалить базу данных hrdb, используйте владельца hrdb для подключения к базе данных, отличной от базы данных hrdb, например, postgres, и выполните следующую инструкцию:
PostgreSQL удалил базу данных hrdb.
2) Удаление базы данных с активными соединениями, пример
Следующий оператор удаляет базу данных testdb1:
Однако PostgreSQL выдал следующую ошибку:
Чтобы удалить базу данных testdb1, необходимо разорвать активное соединение и удалить базу данных.
Сначала запросите представление pg_stat_activity, чтобы узнать, какие действия выполняются в базе данных testdb1:
База данных testdb1 имеет одно соединение с локальным хостом, поэтому безопасно разорвать это соединение и удалить базу данных.
Во-вторых, разорвите соединение с базой данных testdb1, используя следующую инструкцию:
В-третьих, введите команду DROP DATABASE, чтобы удалить базу данных testdb1:
PostgreSQL навсегда удаляет testdb1.
В этом руководстве вы узнали, как использовать оператор PostgreSQL DROP DATABASE для удаления базы данных. Кроме того, вы также узнали, как удалить базу данных с активными подключениями.
DROP DATABASE в PostgreSQL — это оператор для безвозвратного удаления всех записей каталога и каталога данных. Владелец базы данных может только выполнить эту команду. Его нельзя выполнить, пока кто-то подключен к целевой базе данных. Вам нужно подключиться к другой базе данных, чтобы выполнить команду DROP DATABASE.
Поэтому при выполнении этой операции следует соблюдать особую осторожность.
Синтаксис PostgreSQL DROP DATABASE:
- ЕСЛИ СУЩЕСТВУЕТ. Это необязательный параметр. В случае, если база данных не существует, вместо ошибки отображается предупреждение
- имя: укажите имя БД, которую вы хотите удалить
Давайте посмотрим на пример командной строки удаления базы данных PostgreSQL в действии
Перетащите базу данных PostgreSQL с помощью оболочки SQL (командная строка)
Ниже приведен пошаговый процесс удаления базы данных в командной строке Postgres:
Шаг 1) Используйте команду \l, чтобы определить доступную в данный момент базу данных.
Шаг 2) Чтобы удалить базу данных в Postgres, введите команду
Используйте команду \l, чтобы проверить, удалена ли БД
Шаг 3) Попробуйте снова удалить ту же базу данных, вы получите сообщение об ошибке.
Шаг 4. Отбросьте базу данных с предложением IF exists, и вы получите предупреждение
PgAdmin базы данных PostgreSQL Drop (GUI)
Шаг 1) Щелкните правой кнопкой мыши базу данных "guru99" и выберите "Удалить/Удалить".
Шаг 2) Нажмите OK во всплывающем окне подтверждения
База данных удалена.
команда dropdb
Команда dropdb позволяет удаленно удалить базу данных в PostgreSQL. Но пользователь должен быть владельцем базы данных, чтобы использовать команду удаления базы данных PostgreSQL для удаления этой базы данных.
Синтаксис:
Опция | Описание |
---|---|
-e | Эхо-команды, которые dropdb создает и отправляет на сервер. |
-i | Отображать запрос подтверждения перед выполнением любого деструктивного задания | tr>
-V | Используйте эту опцию, чтобы распечатать версию dropdb. |
–help | Предоставить помощь с аргументами командной строки dropdb. |
-h host | Помогает указать имя хоста системы, на которой в данный момент находится сервер работает. |
-p порт | Опция позволяет указать расширение файла сокета домена Unix, на котором сервер устанавливает соединения. | < /tr>
–если существует | Если существует будет показывать ошибку вместо прогрева, если БД не выходит |
- U имя пользователя | Имя пользователя для подключения. |
-w | Используйте этот параметр, если не хотите запрашивать пароль |
-W | Используйте этот p параметр для запроса пароля перед удалением базы данных. |
maintenance db-=dbname | имя базы данных, к которой нужно подключиться для удаления целевой базы данных. |
Пример удаления базы данных PostgreSQL
Мы хотим уничтожить базу данных guru99 с помощью сервера на хост-компьютере rome, порт 4565, с проверкой, и вам нужно использовать следующую команду PostgreSQL drop database:
Читайте также: