clusterdb#

clusterdb

clusterdb

clusterdb — кластеризовать базу данных Tantor BE

Синтаксис

clusterdb [connection-option...] [ --verbose | -v ] [ --table | -t table ] ... [dbname]

clusterdb [connection-option...] [ --verbose | -v ] --all | -a

Описание

clusterdb - это утилита для повторной кластеризации таблиц в базе данных Tantor BE. Она находит таблицы, которые ранее были кластеризованы, и снова кластеризует их на том же индексе, который был использован в последний раз. Таблицы, которые никогда не были кластеризованы, не затрагиваются.

clusterdb - это оболочка для SQL-команды CLUSTER. Нет эффективной разницы между кластеризацией баз данных с помощью этой утилиты и другими методами доступа к серверу.

Опции

clusterdb принимает следующие аргументы командной строки:

-a
--all

Кластеризовать все базы данных.

[-d] имя_базы_данных
[--dbname=]имя_базы_данных

Указывает имя базы данных, которую необходимо кластеризовать, когда не используется опция -a/--all. Если это не указано, имя базы данных считывается из переменной окружения PGDATABASE. Если она не установлена, используется имя пользователя, указанное для подключения. dbname может быть строкой подключения. Если это так, параметры строки подключения переопределяют любые конфликтующие параметры командной строки.

-e
--echo

Отобразите команды, которые генерирует и отправляет на сервер приложение clusterdb.

-q
--quiet

Не отображать сообщения о ходе выполнения.

-t table
--table=table

Сгруппируйте только таблицу table кластера. Несколько таблиц могут быть сгруппированы путем написания нескольких переключателей -t.

-v
--verbose

Печатать подробную информацию во время обработки.

-V
--version

Распечатать версию clusterdb и завершить работу.

-?
--help

Показать справку о командной строке аргументов clusterdb и выйти.

clusterdb также принимает следующие аргументы командной строки для параметров подключения:

-h host
--host=host

Указывает имя хоста машины, на которой работает сервер. Если значение начинается с косой черты, оно используется в качестве каталога для Unix-доменного сокета.

-p port
--port=port

Указывает TCP-порт или расширение локального файла сокета Unix, на котором сервер прослушивает соединения.

-U username
--username=username

Имя пользователя для подключения.

-w
--no-password

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

-W
--password

Принудите clusterdb запросить пароль перед подключением к базе данных.

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

--maintenance-db=dbname

Сообщает имя базы данных, к которой нужно подключиться для определения, какие базы данных должны быть кластеризованы, когда используется опция -a/--all. Если не указано, будет использоваться база данных postgres, или, если она не существует, будет использоваться база данных template1. Это может быть строка подключения. Если это так, параметры строки подключения переопределят любые конфликтующие параметры командной строки. Кроме того, параметры строки подключения, отличные от самого имени базы данных, будут использоваться при подключении к другим базам данных.

Окружение

PGDATABASE
PGHOST
PGPORT
PGUSER

Параметры подключения по умолчанию

PG_COLOR

Определяет, следует ли использовать цвет в диагностических сообщениях. Возможные значения: always, auto и never.

Эта утилита, как и большинство других утилит Tantor BE, также использует переменные среды, поддерживаемые libpq (см. Раздел 31.15).

Диагностика

В случае затруднений, см. CLUSTER и psql для обсуждения возможных проблем и сообщений об ошибках. Сервер баз данных должен работать на целевом хосте. Кроме того, будут применяться любые настройки соединения по умолчанию и переменные среды, используемые библиотекой libpq для интерфейса пользователя.

Примеры

Для кластеризации базы данных test:

$ clusterdb test

Для кластеризации отдельной таблицы foo в базе данных с именем xyzzy:

$ clusterdb --table=foo xyzzy

См. также

CLUSTER