Cómo modificar la configuración de la base de datos PostgreSQL en ServBay
ServBay proporciona a los desarrolladores de macOS un potente entorno local de desarrollo web, que integra la base de datos PostgreSQL. En este artículo se explica en detalle cómo modificar la configuración de PostgreSQL dentro de ServBay, incluyendo el método recomendado mediante la interfaz gráfica (UI) y el método de edición manual de archivos, recomendado solo para casos temporales y usuarios avanzados.
Dependiendo de la versión de PostgreSQL instalada en tu ServBay, los archivos principales de configuración suelen estar ubicados en el directorio /Applications/ServBay/etc/postgresql/<versión>
. Por ejemplo, con PostgreSQL 16, la ruta de configuración es /Applications/ServBay/etc/postgresql/16
.
Aviso importante
ServBay gestiona la mayoría de las configuraciones a través de su interfaz gráfica (UI) y genera automáticamente los archivos de configuración correspondientes. Se recomienda encarecidamente realizar los cambios desde la UI de ServBay. La edición manual directa de los archivos puede provocar que tus cambios sean sobrescritos la próxima vez que ServBay gestione o actualice la configuración. La edición manual debería usarse solo para pruebas temporales o usuarios que entiendan bien la configuración interna—no es aconsejable para ajustes permanentes ni entornos de producción.
Modificar la configuración desde la UI de ServBay (Recomendado)
ServBay ofrece una interfaz gráfica muy intuitiva, que es la forma más fácil y recomendada de ajustar la configuración de PostgreSQL. Las opciones modificadas desde la UI se aplican automáticamente y, por lo general, entran en vigor de manera inmediata, sin necesidad de reiniciar el servicio (salvo que ServBay indique lo contrario).
Pasos a seguir
- Abre la aplicación de ServBay.
- En la barra de navegación a la izquierda, selecciona
Base de datos
. - En la lista de bases de datos, localiza
PostgreSQL
y haz clic en la versión correspondiente que deseas configurar. - Una vez dentro de la configuración de PostgreSQL, verás detalles y opciones de configuración de la versión seleccionada.
Parámetros que puedes ajustar
En esta sección podrás consultar el usuario y contraseña predeterminados de PostgreSQL que ServBay ha generado para ti (generalmente visibles en la misma página). También podrás modificar directamente algunos parámetros comunes:
- Direcciones de escucha (
listen_addresses
): Controla en qué interfaces de red escucha PostgreSQL. Por defecto suele ser*
, lo que significa todas las interfaces disponibles. - Puerto (
port
): El puerto de red en el que escucha el servicio PostgreSQL. El valor estándar es5432
(esto es diferente del puerto 3306 que usan MySQL/MariaDB). - Máximo de conexiones (
max_connections
): Limita el número máximo de clientes que pueden conectarse simultáneamente. - Memoria de trabajo (
work_mem
): Especifica cuánta memoria puede usar cada proceso de consulta para operaciones de ordenamiento y tablas hash.
Además, en el área Parámetros adicionales
puedes añadir o modificar otros parámetros de postgresql.conf
que no estén directamente listados en la UI. Escribe cada parámetro en una línea siguiendo el formato nombre_parametro = valor
.
Aplicar los cambios
Cuando termines tus ajustes, pulsa el botón Guardar
al pie de la pantalla. ServBay aplicará automáticamente los cambios. Para la mayoría de los parámetros, los cambios serán efectivos de inmediato. En casos puntuales puede requerirse reiniciar el servicio de PostgreSQL, y ServBay te lo notificará si es necesario.
Modificar configuración mediante edición manual de archivos (No recomendado para cambios permanentes)
Como se mencionó antes, la edición manual de archivos de configuración no es lo aconsejado para la gestión habitual, ya que los cambios pueden ser sobrescritos por la UI de ServBay. Sin embargo, conocer la ubicación y la estructura de los archivos es útil para entender la configuración subyacente de PostgreSQL.
WARNING
La edición manual solo debe emplearse para pruebas temporales o tareas avanzadas de diagnóstico. ServBay recomienda siempre usar la interfaz gráfica para asegurar la persistencia y coherencia de la configuración. Ten en cuenta que las rutas y contenidos de los archivos pueden ser restablecidos por el propio ServBay en su proceso de gestión interna.
Ubicación de los archivos de configuración
Los archivos principales de configuración en ServBay para PostgreSQL son postgresql.conf
y pg_hba.conf
, cuya ubicación depende de la versión instalada y habitualmente se encuentran en:
postgresql.conf
:/Applications/ServBay/etc/postgresql/<versión>/postgresql.conf
pg_hba.conf
:/Applications/ServBay/etc/postgresql/<versión>/pg_hba.conf
Recuerda que algunas documentaciones antiguas pueden referir rutas como /db/postgresql/16/pg_hba.conf
, que corresponden a mecanismos internos u otras versiones previas; sin embargo, la UI de ServBay gestiona los archivos ubicados bajo /Applications/ServBay/etc
. Si vas a realizar ediciones manuales, verifica la ruta exacta que está en uso. Para mantener la coherencia con la gestión de la UI, la ruta /Applications/ServBay/etc/postgresql/<versión>
es la más fiable.
Ejemplos de configuración habituales
A continuación se presentan ejemplos habituales de parámetros en postgresql.conf
y pg_hba.conf
. Abre estos archivos con un editor de texto (VS Code, Sublime Text, Nano, etc.) y asegúrate de usar permisos de administrador para poder guardar los cambios.
postgresql.conf
postgresql.conf
es el archivo principal de configuración del servidor PostgreSQL, controlando la mayor parte de su comportamiento.
# Direcciones de escucha: interfaces de red que escuchará el servidor. '*' significa todas.
listen_addresses = '*'
# Puerto: puerto de red por donde escucha el servidor. El estándar de PostgreSQL es 5432.
port = 5432
# Máximo de conexiones: número máximo de clientes que pueden conectarse simultáneamente.
max_connections = 100
# Tamaño del buffer compartido: memoria compartida que utiliza PostgreSQL para cachear datos.
shared_buffers = 128MB
# Directorio de logs: especifica dónde se almacenan los archivos de registro/log.
log_directory = 'log'
# Formato del nombre de archivo de logs: indica el patrón de nombres para los logs.
log_filename = 'postgresql-%Y-%m-%d.log'
# Habilitar logs de consultas lentas: registra las consultas cuya duración supere los milisegundos indicados.
# Asigna un número entero positivo, por ejemplo 2000 significa registrar consultas que tarden más de 2 segundos.
# Si lo pones en -1, se deshabilitan los logs de consultas lentas.
log_min_duration_statement = 2000
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
pg_hba.conf
El archivo pg_hba.conf
(Host-Based Authentication) determina los métodos de autenticación y permisos para las conexiones de clientes.
# TYPE DATABASE USER ADDRESS METHOD
# Permitir conexiones locales vía socket Unix, usando el método trust (sin contraseña).
# "local" es solo para conexiones de socket Unix
local all all trust
# Permitir conexiones remotas por IPv4 desde cualquier dirección, usando autenticación md5.
# Conexiones locales IPv4:
host all all 0.0.0.0/0 md5
# Permitir conexiones remotas por IPv4 desde una subred específica (ej. 192.168.1.0/24), autenticación md5.
# Conexiones IPv4 desde una subred concreta:
# host all all 192.168.1.0/24 md5
2
3
4
5
6
7
8
9
10
11
12
13
Asegúrate de comprender el significado de cada columna (TYPE
, DATABASE
, USER
, ADDRESS
, METHOD
) antes de modificar pg_hba.conf
, ya que una configuración incorrecta podría causar bloqueos de acceso o riesgos de seguridad.
Aplicar los cambios manuales
Después de editar los archivos de configuración, es necesario reiniciar el servicio de PostgreSQL para que los cambios tengan efecto.
Reiniciar desde la interfaz de ServBay
- Abre la interfaz de gestión de ServBay.
- En la barra de navegación izquierda, selecciona
Base de datos
. - Busca
PostgreSQL
y haz clic en la versión correspondiente. - En la página de configuración, o en la lista de "Paquetes"/"Servicios" de la pantalla principal, localiza el servicio PostgreSQL de la versión deseada y haz clic en
Reiniciar
.
Reiniciar usando la herramienta de línea de comandos servbayctl
Puedes gestionar los servicios de ServBay fácilmente desde la terminal con la herramienta servbayctl
, incluido el reinicio de PostgreSQL:
servbayctl restart postgresql <versión>
Reemplaza <versión>
por el número de versión real que estés utilizando, como 16
.
Resumen
ServBay ofrece una interfaz gráfica sencilla para modificar la configuración de PostgreSQL, que es el método recomendado para evitar problemas por sobrescritura o pérdida de cambios. Desde la UI puedes ajustar direcciones de escucha, puerto, número de conexiones y comprobar las credenciales predeterminadas, entre otras opciones. Para necesidades avanzadas o pruebas puntuales, puedes editar manualmente los archivos postgresql.conf
y pg_hba.conf
, los cuales se encuentran en /Applications/ServBay/etc/postgresql/<versión>
. Recuerda que cualquier cambio, ya sea desde la UI o manual, suele requerir reiniciar el servicio de PostgreSQL para aplicarse; tienes la opción de hacerlo desde la UI de ServBay o el comando servbayctl
.
Comprender estas opciones y métodos de configuración te permitirá adaptar el entorno de PostgreSQL en ServBay según las necesidades de tu desarrollo.