GNU/Linux >> Tutoriales Linux >  >> Linux

15 Comandos Prácticos de Administración de Bases de Datos PostgreSQL


Anteriormente hablamos sobre cómo instalar la base de datos PostgreSQL en Linux desde la fuente.

En este artículo, repasemos los 15 mejores ejemplos prácticos de comandos de DBA de postgreSQL .

Si es administrador de mySQL, consulte nuestro artículo de 15 ejemplos de comandos de mysqladmin que analizamos hace un tiempo.


1. ¿Cómo cambiar la contraseña de usuario raíz de PostgreSQL?

$ /usr/local/pgsql/bin/psql postgres postgres
Password: (oldpassword)
# ALTER USER postgres WITH PASSWORD 'tmppassword';

$ /usr/local/pgsql/bin/psql postgres postgres
Password: (tmppassword)


Cambiar la contraseña de un usuario normal de postgres es similar a cambiar la contraseña del usuario root. El usuario raíz puede cambiar la contraseña de cualquier usuario, y los usuarios normales solo pueden cambiar sus contraseñas como lo hace Unix.

# ALTER USER username WITH PASSWORD 'tmppassword';

2. ¿Cómo configurar el script de inicio de PostgreSQL SysV?

$ su - root

# tar xvfz postgresql-8.3.7.tar.gz

# cd postgresql-8.3.7

# cp contrib/start-scripts/linux /etc/rc.d/init.d/postgresql

# chmod a+x /etc/rc.d/init.d/postgresql

3. ¿Cómo verificar si el servidor PostgreSQL está funcionando?

$ /etc/init.d/postgresql status
Password:
pg_ctl: server is running (PID: 6171)
/usr/local/pgsql/bin/postgres "-D" "/usr/local/pgsql/data"
[Note: The status above indicates the server is up and running]

$ /etc/init.d/postgresql status
Password:
pg_ctl: no server running
[Note: The status above indicates the server is down]

4. ¿Cómo iniciar, detener y reiniciar la base de datos PostgreSQL?

# service postgresql stop
Stopping PostgreSQL: server stopped
ok

# service postgresql start
Starting PostgreSQL: ok

# service postgresql restart
Restarting PostgreSQL: server stopped
ok

5. ¿Cómo puedo saber qué versión de PostgreSQL estoy ejecutando?

$ /usr/local/pgsql/bin/psql test
Welcome to psql 8.3.7, the PostgreSQL interactive terminal.

Type:  \copyright for distribution terms
\h for help with SQL commands
\? for help with psql commands
\g or terminate with semicolon to execute query
\q to quit

test=# select version();
version
----------------------------------------------------------------------------------------------------
PostgreSQL 8.3.7 on i686-pc-linux-gnu, compiled by GCC gcc (GCC) 4.1.2 20071124 (Red Hat 4.1.2-42)
(1 row)

test=#

5. ¿Cómo crear un usuario de PostgreSQL?

Hay dos métodos en los que puede crear un usuario.

Método 1: Creando el usuario en el indicador de PSQL, con el comando CREAR USUARIO.

# CREATE USER ramesh WITH password 'tmppassword';
CREATE ROLE

Método 2: Crear el usuario en el indicador de shell, con el comando createuser.

$ /usr/local/pgsql/bin/createuser sathiya
Shall the new role be a superuser? (y/n) n
Shall the new role be allowed to create databases? (y/n) n
Shall the new role be allowed to create more new roles? (y/n) n
CREATE ROLE

6. ¿Cómo crear una base de datos PostgreSQL?

Hay dos métodos en los que puede crear dos bases de datos.

Método 1: Creación de la base de datos en el indicador de PSQL, con el comando createuser.

# CREATE DATABASE mydb WITH OWNER ramesh;
CREATE DATABASE

Método 2: Creando la base de datos en el indicador de shell, con el comando createdb.

$ /usr/local/pgsql/bin/createdb mydb -O ramesh
CREATE DATABASE

* -O nombre del propietario es la opción en la línea de comando.

7. ¿Cómo obtengo una lista de bases de datos en una base de datos de Postgresql?

# \l  [Note: This is backslash followed by lower-case L]
List of databases
Name | Owner | Encoding
----------+----------+----------
backup | postgres | UTF8
mydb | ramesh | UTF8
postgres | postgres | UTF8
template0 | postgres | UTF8
template1 | postgres | UTF8

8. ¿Cómo eliminar/eliminar una base de datos PostgreSQL existente?

# \l
List of databases
Name | Owner | Encoding
----------+----------+----------
backup | postgres | UTF8
mydb | ramesh | UTF8
postgres | postgres | UTF8
template0 | postgres | UTF8
template1 | postgres | UTF8

# DROP DATABASE mydb;
DROP DATABASE

9. Obtener ayuda sobre los comandos de PostgreSQL

\? mostrará la ayuda del símbolo del sistema de PSQL. \h CREATE mostrará ayuda sobre todos los comandos que comienzan con CREATE, cuando desee algo específico, como ayuda para crear un índice, debe proporcionar CREATE INDEX.

# \?

# \h CREATE

# \h CREATE INDEX

10. ¿Cómo obtengo una lista de todas las tablas en una base de datos de Postgresql?

# \d

En una base de datos vacía, obtendrá "No se encontraron relaciones". mensaje para el comando anterior.

11. ¿Cómo activar el tiempo y comprobar cuánto tiempo tarda en ejecutarse una consulta?

# \timing — Después de esto, si ejecuta una consulta, mostrará cuánto tiempo tomó hacerlo.

# \timing
Timing is on.

# SELECT * from pg_catalog.pg_attribute ;
Time: 9.583 ms

12. ¿Cómo hacer una copia de seguridad y restaurar la base de datos y la tabla de PostgreSQL?

Discutimos anteriormente cómo hacer una copia de seguridad y restaurar la base de datos y las tablas de Postgres usando la utilidad pg_dump y psql.

13. ¿Cómo ver la lista de funciones disponibles en PostgreSQL?

Para conocer más sobre las funciones, diga \df+

# \df

# \df+

14. ¿Cómo editar consultas de PostgreSQL en su editor favorito?

# \e

\e abrirá el editor, donde puede editar las consultas y guardarlas. Al hacerlo, la consulta se ejecutará.

15. ¿Dónde puedo encontrar el archivo de historial de PostgreSQL?

Similar al archivo ~/.bash_history de Linux, postgreSQL almacena todo el comando sql que se ejecutó en un archivo de historial llamado ~/.psql_history como se muestra a continuación.

$ cat ~/.psql_history
alter user postgres with password 'tmppassword';
\h alter user
select version();
create user ramesh with password 'tmppassword';
\timing
select * from pg_catalog.pg_attribute;

Linux
  1. Cómo instalar PostgreSQL en CentOS 7 / RHEL 7

  2. Mis 8 comandos prácticos favoritos de Linux

  3. Servidor de base de datos PostgreSQL

  4. Cómo hacer una copia de seguridad y restaurar la base de datos en PostgreSQL

  5. Crear base de datos PostgreSQL sin privilegios de root

Cómo instalar el servidor de base de datos PostgreSQL CentOS 8

Cómo instalar PostgreSQL 14 en RHEL 8 Linux

Cómo instalar PostgreSQL en Debian 10 Buster

¿Cómo crear una base de datos PostgreSQL?

40 Ejemplo Práctico y Productivo de Comandos Linux df

Cómo instalar la base de datos PostgreSQL y pgAdmin en Linux