PostgreSQL
Introducción
Si no conoces como funciona una base de datos SQL, empieza por las actividades de Sqlite.
Windows
Instal.la postgres con Scoop:
> scoop install postgresql
pg_ctl es una utilidad para inicializar un clúster de base de datos PostgreSQL , iniciar, detener o reiniciar el servidor de base de datos PostgreSQL ( postgres ) o mostrar el estado de un servidor en ejecución.
Ejecuta pg_ctl start
para iniciar la base de datos:
> pg_ctl.exe start
...
server started
En cualquier momento puedes detener la base de datos con pg_ctl stop
.
psql
psql es un "shell" para PostgreSQL que te permite escribir consultas de forma interactiva, enviarlas a PostgreSQL y ver los resultados de la consulta.
Inicia una sesión con el usuario postgres
:
> psql -U postgres
postgres=#
Un servidor Postgres puede gestionar varias bases de datos al mismo tiempo.
Utiliza el comando \l
(o \list
) para ver todas las bases de datos definidas en el servidor,
postgres=# \l
List of databases
Name | Owner | Encoding | Locale Provider | Collate | Ctype | Locale | ICU Rules | Access privileges
-----------+----------+----------+-----------------+---------+-------+--------+-----------+-----------------------
postgres | postgres | UTF8 | libc | C | en | | |
template0 | postgres | UTF8 | libc | C | en | | | =c/postgres +
| | | | | | | | postgres=CTc/postgres
template1 | postgres | UTF8 | libc | C | en | | | =c/postgres +
| | | | | | | | postgres=CTc/postgres
(3 rows)
postgres
es la base de datos predeterminada a la que te conectas.
Crea una base de datos test
:
postgres=# create database test;
CREATE DATABASE
Conectate a la base de datos test
:
postgres=# \c test
You are now connected to database "test" as user "postgres".
test=>
Con \dt
puedes ver que tablas tiene la base de datos:
postgres=# \dt
Did not find any relations.
En qualquier momento puedes "limpiar" el shell con \! cls
:
postgres=# \! cls
Con \q
finalizas la sesión:
test=# \q
$
pgAdmin
Al instalar postgres
también has instalado pgAdmin.
Aprieta la tecla windows ⊞
i selecciona "pgAdmin 4".
Añade el servidor (en Windows no necesitas password):
Linux
Inicia una máquina virtual Linux con Windows Subsytem for Linux (WSL).
> connect connect-wsl postgres -new
Apt
Insta.la postgres:
sudo apt update && sudo apt install -y postgresql
docker
Crea un contenedor postgres con Docker:
docker run -d --name postgres --restart=always -p 5432:5432 -e POSTGRES_PASSWORD=password -e POSTGRES_USER=postgres -e POSTGRES_PASSWORD=password postgres:17
Instala pgAdmin:
docker run -d --name pgadmin --restart=always --network host -e PGADMIN_DEFAULT_EMAIL=postgres@mail.com -e PGADMIN_DEFAULT_PASSWORD=password dpage/pgadmin4:8
Abre el navegador en http://localhost.
A continuación tienes un video que te muestra como configurar un servidor.
Si no has modificado los parámetros configurados por defecto, el usuario es postgres@mail.com
y la contraseña password
.
Datagrip
Puedes utilitzar DataGrip para gestionar la base de datos:
Scott
Scott és una base de dades demo.
Windows
Importa la base de dades "Scott":
> wget https://gitlab.com/xtec/postgres-data/-/raw/main/scott.sql -O scott.sql
> psql -U postgres -f scott.sql
En la página web de pgAdmin selecciona la base de datos Scoot.
A continuación abre la herramienta "Query Tool".
Ya puedes hacer consultas a la base de datos:
En la actividad Query - Scott tienes muchos ejemplod de consultas a la base de datos Scott.
Linux
Con docker:
wget https://gitlab.com/xtec/postgres-data/-/raw/main/scott.sql
docker cp scott.sql postgres:scoot.sql
cat scott.sql | docker exec -i postgres su postgres -c "psql"