Sólo ingresa psql -U <usuario> -W
y listo!
Sino te acuerdas usuarios ni contraseñas: sudo -u postgres psql postgres
Todavía no anda? ALTER USER <usuario> WITH PASSWORD '<nuevapass>';
Todavía no anda? psql -U <usuario> -W -h localhost
Lo de abajo es historia..
PostreSQL cuenta con 2 modos de uso:
- Comandos para gestión del motor
- Comandos para la gestión de base de datos de usuario (comandos SQL)
El modo 1 es el que utilizan todas las CLI comunes (i.e. MySQL)
Ejemplo de implementación:
- Modo 0:
createdb --owner owner_name database_name
- Modo 1:
CREATE DATABASE test;
Para ejecutar la interfaz PostreSQL:
$ sudo su - postgres
postgres@server-name:~$ logout # Salir de la interfaz
$
Desde aquí se pueden ejecutar comandos del modo 0.
Para ingresar comandos del modo 1, se utiliza el siguiente comando:
postgres@server-name:~$ psql -c "-- SENTENCIAS SQL AQUI"
Para ejecutar comandos (del modo 0 o modo 1) sin ingresar a la interfaz PostreSQL, se puede utilizar el siguiente comando:
sudo su postgres -c "# COMANDO MODO 0"
sudo su postgres -c "psql -c \"-- COMANDO MODO 1\""
Ejemplo de uso:
# Comando modo 0
sudo su postgres -c "createuser -DIRSw $USERNAME"
# Comando modo 1
sudo su postgres -c "psql -c \"DROP DATABASE $DATABASENAME\""
NOTA: he decidido llamar modo 0 y 1 para facilitar la comprensión, solamente es una regla que utilicé aquí.