clusterdb
clusterdb - кластеризовать базу данных QHB.
Синтаксис
clusterdb [параметр-подключения...] [ --verbose | -v ] [ --table | -t таблица ] ... [имя_бд]
clusterdb [параметр-подключения...] [ --verbose | -v ] --all | -a
Описание
clusterdb — это утилита для повторной кластеризации таблиц в базе данных QHB. Она находит ранее кластеризованные таблицы и снова группирует их на основании последнего использованного индекса. Таблицы, которые никогда не группировались, не затрагиваются.
clusterdb — это обертка для команды SQL CLUSTER. Между кластеризацией баз данных с помощью этой утилиты и кластеризацией иными способами при обращении к серверу по сути нет никакой разницы.
Параметры
clusterdb принимает следующие аргументы командной строки:
-a
--all
Кластеризовать все базы данных.
[-d] имя_бд
[--dbname=]имя_бд
Задает имя базы данных для кластеризации, когда не используется параметр
-a/--all. Если это указание отсутствует, имя базы данных считывается из
переменной среды PGDATABASE. Если эта переменная не установлена, используется
имя пользователя, указанное для подключения.
-e
--echo
Отобразить на экране команды, которые clusterdb генерирует и отправляет на
сервер.
-q
--quiet
Не показывать сообщения о прогрессе выполнения.
-t таблица
--table=таблица
Кластеризовать конкретную таблицу. Написав параметр -t несколько раз,
можно кластеризовать несколько таблиц.
-v
--verbose
Вывести подробную информацию во время процесса.
-V
--version
Вывести версию clusterdb и завершиться.
-?
--help
Показать справку об аргументах командной строки clusterdb и завершиться.
Кроме того, в качестве параметров подключения clusterdb принимает следующие аргументы командной строки:
-h хост
--host=хост
Задает имя хост-компьютера, на котором работает сервер. Если значение начинается
со слэша, оно используется в качестве каталога для Unix-сокета.
-p порт
--port=порт
Указывает TCP-порт или расширение файла локального Unix-сокета, через который
сервер принимает подключения.
-U имя_пользователя
--username=имя_пользователя
Имя пользователя, под которым производится подключение.
-w
--no-password
Не запрашивать ввод пароля. Если серверу требуется аутентификация по паролю, и
пароль недоступен с помощью иных средств, таких как файл .pgpass, попытка
подключения завершится неудачно. Этот параметр может быть полезен в пакетных
заданиях и скриптах, где нет пользователя, чтобы ввести пароль.
-W
--password
Принудительно запрашивать пароль перед подключением к базе данных.
Это несущественный параметр, так как clusterdb автоматически запросит пароль, если сервер требует аутентификацию по паролю. Однако чтобы выяснить это, clusterdb потребуется дополнительная попытка подключения к серверу. В некоторых случаях имеет смысл ввести -W, чтобы исключить эту лишнюю попытку.
--maintenance-db=имя_бд
Задает имя базы данных, к которой будет выполняться подключение для определения,
какие базы данных должны быть кластеризованы, когда используется параметр
-a/--all. Если это имя не указано, будет выбрана база данных qhb, а если
она не существует — template1.
Переменные среды
PGDATABASE
PGHOST
PGPORT
PGUSER
Параметры подключения по умолчанию.
PG_COLOR
Указывает, использовать ли цвет в диагностических сообщениях. Возможные значения:
always (всегда), auto (автоматически) и never (никогда).
Диагностика
В случае возникновения затруднений обратитесь к CLUSTER и psql, где рассматриваются потенциальные проблемы и сообщения об ошибках. Сервер базы данных должен работать на целевом хосте.
Примеры
Выполнить кластеризацию базы данных test:
$ clusterdb test
Выполнить кластеризацию отдельной таблицы foo в базе данных xyzzy:
$ clusterdb --table=foo xyzzy