Descripción general
psql es una herramienta potente para interactuar con bases de datos PostgreSQL. No solo permite ejecutar comandos SQL, sino que también proporciona varios comandos meta (comandos de barra invertida) que simplifican las tareas de administración de bases de datos.
Funciones principales
- Ejecutar consultas SQL
- Administrar bases de datos y tablas
- Configurar usuarios y permisos
- Ejecutar archivos de script
- Proporcionar un entorno de shell interactivo
Opciones principales
Opciones principales que se pueden utilizar en la línea de comandos de psql.
Opciones de conexión
Opciones de ejecución de comandos
Comando generado:
Combina los comandos.
Descripción:
`psql` Ejecutando el comando.
Combina las opciones anteriores para ejecutar virtualmente los comandos junto con la IA.
Ejemplos de uso
Varios ejemplos de uso del comando psql.
Conexión a la base de datos por defecto
psql
Se conecta a la base de datos por defecto con el usuario por defecto (el usuario del sistema actual).
Conexión a una base de datos y usuario específicos
psql -U myuser -d mydb -W
Se conecta a la base de datos mydb como el usuario myuser. Aparecerá un aviso para introducir la contraseña.
Conexión a un servidor remoto
psql -h db.example.com -p 5432 -U postgres
Se conecta al puerto 5432 del host remoto (db.example.com) como el usuario postgres.
Ejecutar un único comando SQL
psql -U postgres -d postgres -c "SELECT version();"
Ejecuta un comando SQL para consultar la versión de la base de datos y finaliza psql.
Ejecutar un archivo de script SQL
psql -U postgres -d mydb -f script.sql
Ejecuta los comandos SQL contenidos en el archivo script.sql.
Listar bases de datos
psql -l
Muestra la lista de todas las bases de datos en el servidor PostgreSQL actual.
Instalación
psql se proporciona como parte del paquete cliente de PostgreSQL. En la mayoría de las distribuciones de Linux, es posible instalar solo las herramientas cliente sin instalar el servidor PostgreSQL.
Debian/Ubuntu
sudo apt update
sudo apt install postgresql-client
Instala las herramientas cliente de PostgreSQL utilizando el gestor de paquetes apt.
RHEL/CentOS/Fedora
sudo dnf install postgresql
Instala las herramientas cliente de PostgreSQL utilizando el gestor de paquetes yum o dnf.
Consejos y precauciones
Consejos y precauciones para usar psql de manera más eficiente.
Comandos meta de psql principales
Puede realizar diversas tareas utilizando comandos que comienzan con una barra invertida (\) dentro del shell de psql.
- \l: Muestra la lista de todas las bases de datos
- \dt: Muestra la lista de tablas en la base de datos actual
- \du: Muestra la lista de todos los usuarios (roles)
- \d <table>: Muestra la información del esquema de una tabla específica
- \q: Sale de psql
- \?: Muestra ayuda para todos los comandos meta
Uso de variables de entorno
Puede simplificar los comandos de psql configurando la información de conexión de uso frecuente como variables de entorno.
- PGHOST: Nombre de host o dirección IP
- PGPORT: Número de puerto
- PGUSER: Nombre de usuario
- PGDATABASE: Nombre de la base de datos
- PGPASSWORD: Contraseña (no recomendado por seguridad, se recomienda usar el archivo .pgpass)
Archivo .pgpass
Para almacenar contraseñas de forma segura sin exponerlas en la línea de comandos o variables de entorno, se recomienda usar el archivo ~/.pgpass. Este archivo almacena las contraseñas para hosts, puertos, bases de datos y nombres de usuario específicos, permitiendo que psql se autentique automáticamente.