clusterdb - кластеризация базы данных QHB

clusterdb - кластеризация базы данных QHB

Синтаксис

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

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

Описание

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

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

Параметры

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

АргументОписание
-a, --allКластеризация всех баз данных
[-d] dbname, [--dbname=]dbnameОпределяет имя базы данных для кластеризации. Если не указывать и не использовать параметр -a (или --all), имя базы данных считывается из переменной окружения PGDATABASE. Если не установлена переменная окружения, используется имя пользователя, указанное в параметрах подключения
-e, --echoВыводить команды, которые clusterdb генерирует и отправляет на сервер.
-q, --quietНе отображать сообщения о прогрессе выполнения
-t 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 потратит одну дополнительную попытку подключения для аутентификации. В некоторых случаях стоит ввести -W, чтобы не делать эту попытку.
--maintenance-db=dbnameЗадает имя базы данных для подключения, чтобы определить какие другие базы данных должны быть кластеризованы. Если не указано иное, будет использоваться база данных qhb, а если она не существует, будет использоваться template1

Окружение

PGDATABASE

PGHOST

PGPORT

PGUSER

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

PG_COLOR

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

Эта утилита, как и большинство других утилит QHB, также использует переменные окружения, поддерживаемые libpq .

Диагностика

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

Примеры

Чтобы кластеризовать базу данных test:

$ clusterdb test

Чтобы кластеризировать отдельную таблицу foo в базе данных xyzzy:

$ clusterdb --table=foo xyzzy

См. также

CLUSTER