Vamos a ver lo siguiente:
Doy por hecho que todos tenemos un servidor postgreSQL en algún sitio al que podéis acceder y configurarlo.
Tenemos que darle permisos al usuario local (postgreSQL) para que desde el terminal, que es desde donde ejecutamos los scripts, se pueda conectar.
Por defecto tenemos esta línea:
Para trabajar desde el terminal ya lo tenemos listo.
Lo primero que tenemos que hacer es configurar donde escucha postgreSQL, por defecto localhost.
Hay que modificar el fichero /etc/postgresql/16/main/postgresql.conf y buscar el parámetro listen_addresses y cambiamos lo que hay por un *
O se puede poner la IP del servidor de la interfaz de red por la que se quiere escuchar.
Se pueden poner varias separadas por comas.
Podemos configurar el acceso de dos formas, a un rango de ips o a una IP en concreto
Por ejemplo, rango de IPs añadimos esta entrada al final de todo, suponiendo que tu IP es 192.168.56.18
Y reiniciamos
Y si queremos solo dar acceso a una IP seria de esta forma:
Ahora con esto habilitado podemos programar tareas, scripts, automatizaciones o conectar remotamente “en desarrollo” para programar.
Y esto es todo, feliz programming!!!
Saludos
Alex
:-)
/
Doy por hecho que todos tenemos un servidor postgreSQL en algún sitio al que podéis acceder y configurarlo.
Este artículo se ha hecho con un postgreSQL instalado en Ubuntu por lo que cualquier sistema derivado de Debian debería funcionar para el resto lo diferente seguramente serán las rutas donde están los ficheros de configuración, el resto tiene que funcionar igual.
1) Configurar el servidor postgreSQL para acceder desde el mismo servidor
Para poder conectar desde el terminal hay que cambiar la configuración que viene por defecto en el fichero /etc/postgresql/16/main/pg_hba.confTenemos que darle permisos al usuario local (postgreSQL) para que desde el terminal, que es desde donde ejecutamos los scripts, se pueda conectar.
Por defecto tenemos esta línea:
# TYPE DATABASE USER ADDRESS METHOD
# Database administrative login by Unix domain socket
local all postgres peer
Descripción rápida de los métodos de autenticación:
- peer, solo te deja conectar con postgreSQL si entras en el sistema de Linux con el mismo usuario haces la llamada a postgreSQL
juan@miservidor: psql -u juan
- md5, para conectarse con un password
- trust, para conectarse sin password desde el terminal con el usuario postgres.
# TYPE DATABASE USER ADDRESS METHOD
# Database administrative login by Unix domain socket
local all postgres md5
Y reiniciamos el servidor
sudo /etc/init.d/postgresql restart
Recordar que cada vez que se modifica un fichero de configuración se tiene que reiniciar el servidor.
Ahora al escribir esto desde el terminal
psql -U postgres
pedirá el password
Para trabajar desde el terminal ya lo tenemos listo.
2) Configurar el servidor postgreSQL para acceder desde un servidor remoto
Ahora viene la configuración para la conexión remota desde otro servidor.Lo primero que tenemos que hacer es configurar donde escucha postgreSQL, por defecto localhost.
Hay que modificar el fichero /etc/postgresql/16/main/postgresql.conf y buscar el parámetro listen_addresses y cambiamos lo que hay por un *
listen_addresses = ‘*’
Para que escuche en todas las interfaces de red del servidor.
O se puede poner la IP del servidor de la interfaz de red por la que se quiere escuchar.
Se pueden poner varias separadas por comas.
listen_addresses = '127.0.0.1,192.168.56.19'
Y después de esto reiniciarsudo /etc/init.d/postgresql restart
Aprovecho para recordar que cada vez que se modifica un fichero de configuración se tiene que reiniciar el servidor.
Ahora vamos con el fichero de antes /etc/postgresql/16/main/pg_hba.conf, hay que añadir una nueva entrada.
Podemos configurar el acceso de dos formas, a un rango de ips o a una IP en concreto
Por ejemplo, rango de IPs añadimos esta entrada al final de todo, suponiendo que tu IP es 192.168.56.18
# TYPE DATABASE USER ADDRESS METHOD
host all all 192.168.56.0/24 md5

Y reiniciamos
sudo /etc/init.d/postgresql restart
Y de esta forma conectamospsql -h 192.168.56.19 -U postgres
Siendo 192.168.56.19 la IP del servidor de postgreSQLY si queremos solo dar acceso a una IP seria de esta forma:
# TYPE DATABASE USER ADDRESS METHOD
host all all 192.168.56.18/32 md5
Aunque en el ejemplo el acceso remoto las IP están en el mismo rango esto no tiene porqué ser siempre así.
3) Conclusión
Como podemos ver es bastante sencillo configurar postgreSQL para conectarse a él.Ahora con esto habilitado podemos programar tareas, scripts, automatizaciones o conectar remotamente “en desarrollo” para programar.
Y esto es todo, feliz programming!!!
Saludos
Alex
:-)
/