Comandos consola Postgres

Recopilatorio de algunos comandos útiles en Postgres:

Login usuario postgres:

$ sudo su – postgres

Creación de un usuario:

CREATE USER nombre_usuario WITH password ‘123456';

Eliminar usuario:

DROP USER nombre_usuario;

Crear base de datos:

CREATE DATABASE nombre_db WITH OWNER nombre_usuario;

Eliminar base de datos:

DROP DATABASE nombre_db;

Acceder database con usuario x:

psql -U nombre_usuario nombre_db

Obtener ayuda:

\h

Salir de consola

\q

Leer comandos desde un archivo:

\i input.sql

Dump db a un archivo:

$ pg_dump -U nombre_usuario nombre_db > db.out

Dump todas las bases de datos:

$ sudo su – postgres

$ pg_dumpall > /var/lib/pgsql/backups/dumpall.sql

Restaurar db:

$ sudo su – postgres

$ psql -f /var/lib/pgsql/backups/dumpall.sql mydb

Tambien:

$ psql -U postgres nombredb < archivo_restauracion.sql

Listar bases de datos:

\l

List tablas en base de datos:

\d

Describe table:

\d table_name

Describe table:

\d+ table_name

Use database_name:

\c nombre_db

Mostrar usuarios:

select * from «pg_user»;

# tambien

\du

Escribir las consultas en tu editor favorito:

\e

Activar/Desactivar ver el tiempo del query:

\timing

Reset a user password as admin:

ALTER USER usertochange WITH password ‘new_passwd’;

Select version

SELECT version();

Change Database Owner:

ALTER DATABASE database_name OWNER TO new_owner;

Create a superuser user:

ALTER USER mysuper WITH SUPERUSER;

# or even better

ALTER USER mysuper WITH SUPERUSER CREATEDB CREATEROLE INHERIT LOGIN REPLICATION;

Sabar el tamaño usado las tablas en una base de datos:

Ver mas: http://www.niwi.be/2013/02/17/postgresql-database-table-indexes-size/

SELECT pg_size_pretty(pg_database_size(‘dbname’));

Fuente: http://apuntes-snicoper.readthedocs.io/es/latest/programacion/postgresql/comandos_consola_psql.html