dropdb
dropdb — удалить базу данных PostgreSQL
Синтаксис
dropdb [параметр-подключения...] [параметр...] dbname
Описание
dropdb удаляет ранее созданную базу данных PostgreSQL, и должна выполняться от имени суперпользователя или её владельца.
dropdb это обёртка для SQL-команды DROP DATABASE. Удаление баз данных с её помощью по сути не отличается от выполнения того же действия при обращении к серверу другими способами.
Параметры
dropdb принимает в качестве аргументов:
dbnameУказывает имя удаляемой базы данных.
-e--echoВывести команды к серверу, генерируемые при выполнении dropdb.
-f--forceПопытаться принудительно завершить все существующие подключения к целевой базе, прежде чем удалять её. Подробнее это описано в DROP DATABASE.
-i--interactiveВыводит вопрос о подтверждении перед удалением.
-V--versionВыводит версию dropdb.
--if-existsНе считать ошибкой, если база данных не существует. В этом случае будет выдано замечание.
-?--helpВывести справку по команде dropdb.
dropdb также принимает из командной строки параметры подключения:
-hсервер--host=серверУказывает имя компьютера, на котором работает сервер. Если значение начинается с косой черты, оно определяет каталог Unix-сокета.
-pпорт--port=портУказывает TCP-порт или расширение файла локального Unix-сокета, через который сервер принимает подключения.
-Uимя_пользователя--username=имя_пользователяИмя пользователя, под которым производится подключение.
-w--no-passwordНе выдавать запрос на ввод пароля. Если сервер требует аутентификацию по паролю и пароль не доступен с помощью других средств, таких как файл
.pgpass, попытка соединения не удастся. Этот параметр может быть полезен в пакетных заданиях и скриптах, где нет пользователя, который вводит пароль.-W--passwordПринудительно запрашивать пароль перед подключением к базе данных.
Это несущественный параметр, так как dropdb запрашивает пароль автоматически, если сервер проверяет подлинность по паролю. Однако чтобы понять это, dropdb лишний раз подключается к серверу. Поэтому иногда имеет смысл ввести
-W, чтобы исключить эту ненужную попытку подключения.--maintenance-db=dbnameУказывает имя опорной базы данных, к которой будет произведено подключение для удаления целевой. Если имя не указано, будет выбрана база
postgres, а если она не существует (или именно она и удаляется) —template1. Здесь может задаваться строка подключения. В этом случае параметры в строке подключения переопределяют одноимённые параметры, заданные в командной строке.
Переменные окружения
PGHOSTPGPORTPGUSERПараметры подключения по умолчанию
PG_COLORВыбирает вариант использования цвета в диагностических сообщениях. Возможные значения:
always(всегда),auto(автоматически) иnever(никогда).
Эта утилита, как и большинство других утилит PostgreSQL, также использует переменные среды, поддерживаемые libpq (см. Раздел 32.15).
Диагностика
В случае возникновения трудностей, обратитесь к DROP DATABASE и psql. При диагностике следует учесть, что при запуске утилиты также применяются переменные окружения и параметры подключения по умолчанию libpq.
Примеры
Для удаления базы данных demo на сервере, используемом по умолчанию:
$dropdb demo
Для удаления базы данных demo на сервере eden, слушающим подключения на порту 5000, в интерактивном режиме и выводом запросов к серверу:
$dropdb -p 5000 -h eden -i -e demoБаза данных "demo" будет удалена навсегда. Продолжить? (y/n)yDROP DATABASE demo;
См. также
createdb, DROP DATABASEdropdb
dropdb — remove a PostgreSQL database
Synopsis
dropdb [connection-option...] [option...] dbname
Description
dropdb destroys an existing PostgreSQL database. The user who executes this command must be a database superuser or the owner of the database.
dropdb is a wrapper around the SQL command DROP DATABASE. There is no effective difference between dropping databases via this utility and via other methods for accessing the server.
Options
dropdb accepts the following command-line arguments:
dbnameSpecifies the name of the database to be removed.
-e--echoEcho the commands that dropdb generates and sends to the server.
-f--forceAttempt to terminate all existing connections to the target database before dropping it. See DROP DATABASE for more information on this option.
-i--interactiveIssues a verification prompt before doing anything destructive.
-V--versionPrint the dropdb version and exit.
--if-existsDo not throw an error if the database does not exist. A notice is issued in this case.
-?--helpShow help about dropdb command line arguments, and exit.
dropdb also accepts the following command-line arguments for connection parameters:
-hhost--host=hostSpecifies the host name of the machine on which the server is running. If the value begins with a slash, it is used as the directory for the Unix domain socket.
-pport--port=portSpecifies the TCP port or local Unix domain socket file extension on which the server is listening for connections.
-Uusername--username=usernameUser name to connect as.
-w--no-passwordNever issue a password prompt. If the server requires password authentication and a password is not available by other means such as a
.pgpassfile, the connection attempt will fail. This option can be useful in batch jobs and scripts where no user is present to enter a password.-W--passwordForce dropdb to prompt for a password before connecting to a database.
This option is never essential, since dropdb will automatically prompt for a password if the server demands password authentication. However, dropdb will waste a connection attempt finding out that the server wants a password. In some cases it is worth typing
-Wto avoid the extra connection attempt.--maintenance-db=dbnameSpecifies the name of the database to connect to in order to drop the target database. If not specified, the
postgresdatabase will be used; if that does not exist (or is the database being dropped),template1will be used. This can be a connection string. If so, connection string parameters will override any conflicting command line options.
Environment
PGHOSTPGPORTPGUSERDefault connection parameters
PG_COLORSpecifies whether to use color in diagnostic messages. Possible values are
always,autoandnever.
This utility, like most other PostgreSQL utilities, also uses the environment variables supported by libpq (see Section 32.15).
Diagnostics
In case of difficulty, see DROP DATABASE and psql for discussions of potential problems and error messages. The database server must be running at the targeted host. Also, any default connection settings and environment variables used by the libpq front-end library will apply.
Examples
To destroy the database demo on the default database server:
$dropdb demo
To destroy the database demo using the server on host eden, port 5000, with verification and a peek at the underlying command:
$dropdb -p 5000 -h eden -i -e demoDatabase "demo" will be permanently deleted. Are you sure? (y/n)yDROP DATABASE demo;