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