Muy buenos días a todos los postgreseros y postgreseras que siguen nuestro blog semanal, ¡sean todos bienvenidos a una nueva entrada! En la entrada de esta semana hablaremos de los momentos en los cuales necesitamos de reiniciar el servidor Postgresql. Ésto sucede normalmente por que hemos realizado cambios en los ficheros configuración del cluster que afectan al postmaster y que por lo tanto precisamos de reiniciar la instancia para que estos cambios surtan efecto. En esta entrada veremos las dos formas que disponemos para reiniciar el servidor PostgreSQL.
¡Empezamos!
Reiniciando el Servidor PostgreSQL; Mediante un ejecutable
Podemos utilizar un ejecutable que tenemos disponible en el directorio de instalación de los binarios para reiniciar PostgreSQL. El nombre de este ejecutable es pg_ctl. Tenemos que indicarle el directorio del cluster (donde tenemos almacenados nuestros datos) y la opción “restart”.
pg_ctl -D /path_cluster restart
En el lugar de indicar la ruta completa del cluster podemos indicar una variable del sistema llamada PGDATA. En esta variable tenemos almacenada la ruta del cluster.
pg_ctl -D $PGDATA restart
Reiniciando el Servidor PostgreSQL; Mediante un service
La otra forma que disponemos para restart PostgreSQL server solo es valida si tenemos un script creado para iniciar automáticamente una instancia de Postgres, utilizamos el comando service. Por lo tanto, es tan simple como especificar el nombre del servicio que controla el clúster y la opción “restart”.
sudo service nombre_del_servicio restart
Hay que tener en cuenta que reiniciar el servidor PostgreSQL implica que dejemos sin disposición a todas las bases de datos que tengamos en nuestro cluster.
Dependiendo de los parámetros que hemos cambiado en el fichero de configuración, es posible que no sea necesario tener que reiniciar la instancia de base de datos (restart PostgreSQL server). En tal caso simplemente es suficiente con recargar esos ficheros de configuración, de esta forma las bases de datos siguen estando disponibles.
Para recargar los ficheros de configuración utilizamos los mismos comandos que hemos visto para reiniciar postgreSQL. En vez de utilizar la opción restart, utilizamos la opción reload.
De esta forma se recargan los ficheros de configuración utilizando el ejecutable pg_ctl. Se puede realizar tanto indicándole el directorio del cluster, como utilizando la variable PGDATA.
pg_ctl -D /path_cluster reload
pg_ctl -D $PGDATA reload
Al igual que para reiniciar, la otra forma es utilizando el comando service. Recuerda que para poder utilizarlo debemos de tener creado previamente el servicio.
sudo service nombre_del_servicio reload
En nuestro Curso de Tunnig, se indica cuales son los parámetros cuya modificación hace necesario reiniciar el servidor postgreSQL. Suscríbete y fórmate con nosotros en el motor de Bases de Datos más importante del mundo Open Source; PostgreSQL.
También te vendría bien realiza nuestro Curso de Instalación Avanzada de PostgreSQL 11, para conocer a fondo este tema.