reindexdb
Перестраивает индексы в базе данных.
Синтаксис
reindexdb [ <connection-option> ... ]
[ --table | -t <table> ]
[ --index | -i <index> ]
[ <dbname> ]
reindexdb [ <connection-option> ... ]
[ --all | -a ]
reindexdb [ <connection-option> ... ]
[ --system | -s ]
[ <dbname> ]
reindexdb -? | --help
reindexdb -V | --version
Описание
reindexdb — это утилита для перестроения индексов в Greengage DB.
reindexdb является оберткой над SQL-командой REINDEX.
Нет существенной разницы между переиндексацией баз данных с помощью этой утилиты и с помощью других методов доступа к серверу.
Параметры
- -a | --all
-
Переиндексирует все базы данных.
- [-d] <dbname> | [--dbname=]<dbname>
-
Имя базы данных для переиндексации. Если не указано и не используется
--all, имя базы данных читается из переменной окруженияPGDATABASE. Если и она не установлена, используется имя пользователя, указанное для подключения. - -e | --echo
-
Выводит команды, которые
reindexdbгенерирует и отправляет на сервер. - -i <index> | --index=<index>
-
Перестраивает только указанный индекс.
- -q | --quiet
-
Подавляет вывод сообщений о прогрессе выполнения.
- -s | --system
-
Переиндексирует системные каталоги.
- -t <table> | --table=<table>
-
Переиндексирует только указанную таблицу. Можно переиндексировать несколько таблиц, указав несколько параметров
-t. - -V | --version
-
Выводит версию
reindexdbи завершает работу. - -? | --help
-
Показывает справку по аргументам командной строки
reindexdbи завершает работу.
Параметры подключения
- -h <host> | --host=<host>
-
Имя хоста, на котором запущен экземпляр мастера. Если параметр не указан, читается из переменной окружения
PGHOSTили используется значение по умолчаниюlocalhost. - -p <port> | --port=<port>
-
TCP-порт, на котором мастер принимает подключения. Если параметр не указан, читается из переменной окружения
PGPORTили используется значение по умолчанию5432. - -U <username> | --username=<username>
-
Имя роли для подключения. Если параметр не указан, читается из переменной окружения
PGUSERили используется имя пользователя операционной системы. - -w | --no-password
-
Не запрашивает пароль. Если сервер требует пароль и он недоступен другими способами (например, через файл .pgpass), подключение завершится неудачей. Этот параметр удобен для пакетных заданий и скриптов, где невозможен интерактивный ввод пароля.
- -W | --password
-
Принудительно запрашивает пароль.
- --maintenance-db=<dbname>
-
Указывает имя базы данных для подключения, чтобы определить, какие другие базы данных следует переиндексировать. Если параметр не указан, будет использована база данных
postgres, а если она не существует —template1.
Примечания
reindexdb блокирует таблицы системного каталога, что может повлиять на выполняющиеся запросы.
Чтобы не нарушать работу системы, рекомендуется выполнять reindexdb в периоды низкой нагрузки.
Для выполнения reindexdb может потребоваться несколько подключений к мастеру с повторным запросом пароля.
В таких случаях удобно использовать файл ~/.pgpass.
Примеры
Переиндексировать базу данных mydb:
$ reindexdb mydb
Переиндексировать таблицу foo и индекс bar в базе данных abcd:
$ reindexdb --table foo --index bar abcd