vacuumlo
vacuumlo — удалить потерянные большие объекты из базы данных Postgres Pro Shardman
Синтаксис
vacuumlo [параметр...] dbname...
Описание
Программа vacuumlo представляет собой простую утилиту, которая удаляет все «потерянные» большие объекты из базы данных Postgres Pro Shardman. Потерянным большим объектом (БО) считается такой БО, OID которого не фигурирует ни в каком столбце oid или lo в базе данных.
Обработке подвергаются все базы данных, перечисленные в командной строке.
Параметры
vacuumlo принимает следующие аргументы командной строки:
-lпредел--limit=пределУдалять в одной транзакции ограниченное количество больших объектов (максимальное количество задаёт
предел, по умолчанию 1000). Так как сервер запрашивает блокировку для каждого удаляемого БО, удаление слишком большого количества БО в одной транзакции чревато превышением лимита max_locks_per_transaction. Если вы всё же хотите, чтобы все удаления происходили в одной транзакции, установите этот предел, равным нулю.-n--dry-runНе удалять ничего, только показать, какие операции должны были выполняться.
-v--verboseВыводить подробные сообщения о прогрессе.
-V--versionВывести версию vacuumlo и завершиться.
-?--helpВывести справку об аргументах командной строки vacuumlo и завершиться.
vacuumlo также принимает в командной строке следующие аргументы, задающие параметры подключения:
-hсервер--host=серверАдрес сервера баз данных.
-pпорт--port=портПорт сервера баз данных.
-Uимя_пользователя--username=имя_пользователяИмя пользователя, под которым производится подключение.
-w--no-passwordНе выдавать запрос на ввод пароля. Если сервер требует аутентификацию по паролю и пароль не доступен с помощью других средств, таких как файл
.pgpass, попытка соединения не удастся. Этот параметр может быть полезен в пакетных заданиях и скриптах, где нет пользователя, который вводит пароль.-W--passwordПринудительно запрашивать пароль перед подключением к базе данных.
Это несущественный параметр, так как vacuumlo запрашивает пароль автоматически, если сервер проверяет подлинность по паролю. Однако чтобы понять это, vacuumlo лишний раз подключается к серверу. Поэтому иногда имеет смысл ввести
-W, чтобы исключить эту ненужную попытку подключения.
Переменные окружения
PGHOSTPGPORTPGUSERПараметры подключения по умолчанию.
Эта утилита, как и большинство других утилит Postgres Pro Shardman, также использует переменные среды, поддерживаемые libpq (см. Раздел 34.15).
Переменная окружения PG_COLOR выбирает вариант использования цвета в диагностических сообщениях. Возможные значения: always (всегда), auto (автоматически) и never (никогда).
Примечания
Программа vacuumlo работает следующим образом: сначала vacuumlo строит временную таблицу, содержащую все OID больших объектов в выбранной базе данных. Затем она сканирует все столбцы в базе данных, имеющие тип oid или lo, и удаляет соответствующие записи из временной таблицы. (Замечание: рассматриваются только типы именно с такими именами, а не, например, домены на их базе.) Оставшиеся записи во временной таблице указывают на потерянные БО, которые затем и удаляются.
Автор
Питер Маунт <peter@retep.org.uk>