clusterdb

clusterdb — agrupar (clusterizar) una base de datos PostgreSQL

Synopsis

clusterdb [connection-option...] [option...] [ --table | -t table ] ... [ dbname | -a | --all ]

Descripción

clusterdb es una utilidad para volver a agrupar tablas en una base de datos PostgreSQL. Encuentra tablas que se hayan agrupado previamente y las vuelve a agrupar con el mismo índice que se usó la última vez. Las tablas que nunca se han agrupado no se ven afectadas.

clusterdb es un envoltorio alrededor del comando SQL CLUSTER. No hay ninguna diferencia efectiva entre agrupar bases de datos a través de esta utilidad y a través de otros métodos para acceder al servidor.

Opciones

clusterdb acepta los siguientes argumentos de línea de comandos:

-a
--all

Agrupa todas las bases de datos.

[-d] dbname
[--dbname=]dbname

Especifica el nombre de la base de datos que se va a agrupar, cuando no se usa -a/--all. Si no se especifica, el nombre de la base de datos se lee de la variable de entorno PGDATABASE. Si esta no está establecida, se utiliza el nombre de usuario especificado para la conexión. El dbname puede ser una cadena de conexión. Si es así, los parámetros de la cadena de conexión anularán cualquier opción de línea de comandos en conflicto.

-e
--echo

Muestra los comandos que clusterdb genera y envía al servidor.

-q
--quiet

No muestra mensajes de progreso.

-t table
--table=table

Agrupa únicamente la tabla table. Se pueden agrupar varias tablas especificando múltiples opciones -t.

-v
--verbose

Muestra información detallada durante el procesamiento.

-V
--version

Muestra la versión de clusterdb y termina.

-?
--help

Muestra ayuda sobre los argumentos de línea de comandos de clusterdb y termina.

clusterdb también acepta los siguientes argumentos de línea de comandos para los parámetros de conexión:

-h host
--host=host

Especifica el nombre de host de la máquina en la que se está ejecutando el servidor. Si el valor comienza con una barra diagonal, se utiliza como el directorio para el socket de dominio Unix.

-p port
--port=port

Especifica el puerto TCP o la extensión del archivo de socket de dominio Unix local en el que el servidor está escuchando las conexiones.

-U username
--username=username

Nombre de usuario con el que conectarse.

-w
--no-password

Nunca solicita una contraseña. Si el servidor requiere autenticación por contraseña y no hay una contraseña disponible por otros medios, como un archivo .pgpass, el intento de conexión fallará. Esta opción puede ser útil en trabajos por lotes (scripts) donde no hay ningún usuario presente para introducir una contraseña.

-W
--password

Fuerza a clusterdb a solicitar una contraseña antes de conectarse a una base de datos.

Esta opción nunca es esencial, ya que clusterdb solicitará automáticamente una contraseña si el servidor exige autenticación por contraseña. Sin embargo, clusterdb desperdiciará un intento de conexión para descubrir que el servidor requiere una contraseña. En algunos casos, vale la pena especificar -W para evitar el intento de conexión adicional.

--maintenance-db=dbname

Cuando se usa -a/--all, se conecta a esta base de datos para obtener la lista de bases de datos que se van a agrupar. Si no se especifica, se utilizará la base de datos postgres, o si esta no existe, se utilizará template1. Puede ser una cadena de conexión. Si es así, los parámetros de la cadena de conexión anularán cualquier opción de línea de comandos en conflicto. Además, los parámetros de la cadena de conexión que no sean el propio nombre de la base de datos se reutilizarán al conectarse a otras bases de datos.

Entorno

PGDATABASE
PGHOST
PGPORT
PGUSER

Parámetros de conexión por defecto.

PG_COLOR

Especifica si se debe usar color en los mensajes de diagnóstico. Los valores posibles son always, auto y never.

Esta utilidad, al igual que la mayoría de las demás utilidades de PostgreSQL, también utiliza las variables de entorno admitidas por libpq (consulta Section 32.15).

Diagnósticos

En caso de dificultades, consulta CLUSTER y psql para obtener información sobre posibles problemas y mensajes de error. El servidor de la base de datos debe estar ejecutándose en el host de destino. Además, se aplicará cualquier configuración de conexión por defecto y variable de entorno utilizada por la biblioteca de cliente libpq.

Ejemplos

Para agrupar la base de datos test:

$ clusterdb test

Para agrupar una sola tabla foo en una base de datos llamada xyzzy:

$ clusterdb --table=foo xyzzy

Consulte también

CLUSTER