Instalar PostgreSQL en FreeBSD
06/05/2024Postgresql es una base de datos relacional que se ha popularizado en los últimos años. Y en este tutorial les mostrare como instalarlo en nuestro sistema FreeBSD, ya sea en el servidor principal o en un "Jail".
Requerimientos:
Tener instalado pkg. Si aun no lo tienes ejecuta el siguiente comando:
# pkg installTener actualizado el sistema. Para ello ejecutaremos los comandos:
# pkg update
# pkg upgradeInstalación
Al día que se escribió este articulo la versión mas reciente de Postgresql en FreeBSD es la versión 16. Por lo que su instalación sera la siguiente:
# pkg install postgresql16-server postgresql16-clientPuedes instalar la versión 14 o 15 replazandolo por el 16.
Inicializar la base de datos con el siguiente comando:
# /usr/local/etc/rc.d/postgresql initdbArranque
Para iniciar el servidor de postgres tenemos 2 opciones.
- Si quieres que postgres inicie en el arranque del sistema:
Ejecutar el comando para habilitar el arranque:
# sysrc postgresql_enable="YES"Y ahora ya podemos iniciar el servicio:
# service postgresql start- Si queremos iniciar Postgres manualmente:
Iniciamos el servicio con el siguiente comando:
# service postgresql onestartY por ultimo verifiquemos que Postgres haya iniciado correctamente con el comando:
$ sockstat -46 | grep 5432Configuración
Ahora configuraremos los usuarios de Postgres.
Postgres tiene un sistema de autenticación basado en los usuarios en el sistema. Por lo que al instalar Postgres también se creo un usuario "postgres".
Ahora cambiaremos su contraseña con el comando:
# passwd postgresY ahora iniciaremos con la nueva contraseña:
# su - postgresDesde el usuario de postgres podemos crear mas usuarios y bases de datos:
$ createuser admin
$ createdb foo_db -O adminAquí indicamos que la base de datos foo_db pertenece al usuario admin.
Ahora tenemos que darle una contraseña al usuario admin.
Iniciamos el cliente de Postgres:
$ psql foo_dbY dentro lo de consola ejecutaremos las siguiente consultas:
foo_db=# alter role admin with encrypted password 'yourpassword';
foo_db=# grant all privileges on database foo_db to admin;
foo_db=# exitPor ultimo reiniciamos nuestro servicio:
# service postgresql restartListo, ahora ya podemos iniciar en nuestra base de datos!
Permitir acceso de la red
Para poder acceder a Postgres desde fuera de localhost haremos las siguientes modificaciones al siguiente archivo.
En /var/db/postgres/data16/postgresql.conf:
listen_addresses = '*'Cambiaremos la configuración listen_addresses por '*'.
Y en el archivo /var/db/postgres/data15/pg_hba.conf cambiaremos todos los métodos a md5:
# "local" is for Unix domain socket connections only
local all all md5
# IPv4 local connections:
host all all 127.0.0.1/32 md5
# IPv6 local connections:
host all all ::1/128 md5
# Allow replication connections from localhost, by a user with the
# replication privilege.
local replication all md5
host replication all 127.0.0.1/32 md5
host replication all ::1/128 md5Y por ultimo reiniciamos el servicio:
# service postgresql restartEso es todo. Ahora nos podemos conectar remotamente a nuestro servicio de Postgres con nuestro cliente favorito ya sea pgAdmin, DBeaver o cualquier otro.
Tags: #postgresql #freebsd #tutorial