createdb
Описание
createdb создаёт базу данных PostgreSQL.
Чаще всего пользователь, выполняющий эту команду, назначается владельцем создаваемой базы данных. Однако можно указать владельца явным образом с помощью флага -O, если у текущего пользователя достаточно привилегий.
createdb это обёртка для SQL-команды CREATE DATABASE. Создание баз данных с её помощью по сути не отличается от выполнения того же действия при обращении к серверу другими способами.
Параметры
createdb принимает в качестве аргументов:
- база_данных
Указывает имя создаваемой базы. Имя должно быть уникальным в рамках кластера PostgreSQL. По умолчанию в качестве имени базы данных берётся имя текущего системного пользователя.
- описание
Добавляет комментарий к создаваемой базе.
- -D табличное пространство
--tablespace=табличное пространство Указывает табличное пространство, используемое по умолчанию. Имя пространства обрабатывается аналогично идентификаторам, заключённым в двойные кавычки.
- -e
--echo Вывести команды к серверу, генерируемые при выполнении createdb.
- -E кодировка
--encoding=кодировка Указывает кодировку базы данных. Поддерживаемые сервером PostgreSQL кодировки описаны в Подразделе 22.3.1.
- -l локаль
--locale=локаль Указывает локаль базы данных. Имеет эффект одновременно установленных флагов --lc-collate и --lc-ctype.
- --lc-collate=локаль
Устанавливает параметр LC_COLLATE для базы данных.
- --lc-ctype=локаль
Устанавливает параметр LC_CTYPE для базы данных.
- -O владелец
--owner=владелец Указывает пользователя в качестве владельца создаваемой базы. Имя пользователя обрабатывается аналогично идентификаторам, заключённым в двойные кавычки.
- -T шаблон
--template=шаблон Указывает шаблон, на основе которого будет создана база данных. Имя шаблона обрабатывается аналогично идентификаторам, заключённым в двойные кавычки.
- -V
--version Вывести версию createdb и прервать дальнейшее исполнение.
- -?
--help Вывести помощь по команде createdb и прервать выполнение.
Флаги -D, -l, -E, -O, и -T по назначению соответствуют флагам SQL-команды CREATE DATABASE.
createdb также принимает из командной строки параметры подключения:
- -h host
--host=host Указывает имя компьютера, на котором запущен сервер. Если значение начинается с косой черты, оно интерпретируется как имя каталога с доменным сокетом Unix.
- -p порт
--port=порт Указывает порт TCP или расширение файла Unix-сокета, на котором сервер слушает подключения.
- -U имя_пользователя
--username=имя_пользователя Имя пользователя, под которым производится подключение.
- -w
--no-password Не выдавать запрос на ввод пароля. Если сервер требует аутентификацию по паролю и пароль не доступен с помощью других средств, таких как файл .pgpass, попытка соединения не удастся. Этот параметр может быть полезен в пакетных заданиях и скриптах, где нет пользователя, который вводит пароль.
- -W
--password Принудительно запрашивать пароль перед подключением к базе данных.
Это несущественный параметр, так как createdb запрашивает пароль автоматически, если сервер проверяет подлинность по паролю. Однако, чтобы понять это, createdb лишний раз подключается к серверу. Поэтому иногда имеет смысл ввести -W, чтобы исключить эту ненужную попытку подключения.
- --maintenance-db=база_данных
Указывает имя опорной базы данных, к которой при создании новой будет произведено подключение. Если имя не указано, то будет использоваться postgres. Если же postgres не существует, то будет использоваться template1.
Переменные окружения
- PGDATABASE
Если установлена, то используется при создании базы данных, за исключением ситуации с явным указанием флага командной строки.
- PGHOST
PGPORT
PGUSER Параметры подключения по умолчанию. PGUSER указывает имя пользователя при создании базы данных, если не указано явно в командной строке или в переменной окружения PGDATABASE.
Эта утилита, как и большинство других утилит PostgreSQL, также использует переменные среды, поддерживаемые libpq (см. Раздел 31.14).
Диагностика
В случае возникновения трудностей, обратитесь к CREATE DATABASE и psql . При диагностике нужно учитывать, что при запуске утилиты используются значения переменных окружения и параметров подключения по умолчанию libpq.
Примеры
Для создания базы данных demo на сервере, используемом по умолчанию:
$ createdb demo
Для создания базы demo на сервере eden, порт 5000, с кодировкой LATIN1:
$ createdb -p 5000 -h eden -E LATIN1 -e demo CREATE DATABASE demo ENCODING 'LATIN1';
Пред. | Начало | След. |
clusterdb | Уровень выше | createlang |