Mi puerto predeterminado de PostgreSQL es 5432, quiero cambiar el puerto predeterminado usando la línea de comando (en Windows 7).
Vi esta solución antes: https://stackoverflow.com/questions/187438/want-to-change-pgsql-port
Intenté ejecutar lo siguiente comando, pero falló:
postgres --p 5431
¿Podría alguien decirme cómo cambiar el puerto en el uso de la línea de comandos?
Respuesta
Ya que «está en Windows y probablemente esté iniciando PostgreSQL como un servicio de Windows,» Necesitaré editar postgresql.conf
(dentro de su directorio de datos) para establecer el nuevo puerto allí, luego reiniciar el servicio postgresql usando el panel de control de Servicios o (como administrador) el net service
comando.
Puede usar una herramienta de edición de texto mediante programación para cambiar postgresql.conf
si necesita automatizar esto. En una caja Linux / Unix, usarías una herramienta como sed
o awk
, pero en Windows, imagino que usarás VBS. , powershell o una herramienta complementaria como Perl.
Deberá cambiar la configuración de conexión en herramientas como PgAdmin-III
para usar el nuevo puerto.
Si estaba iniciando PostgreSQL manualmente usando pg_ctl
, podría configurar la variable de entorno PGPORT
o pasar una opción de configuración en el línea de comandos. Esto no funcionará cuando lo esté iniciando como un servicio de Windows.
Comentarios
Responder
- ir a .. \ PostgreSQL \ 9.0 \ data y abra el archivo postgresql.conf en el editor de texto / bloc de notas
- busque el parámetro de puerto .eg: port = 5433
- edítelo a su número de puerto.
- Vaya a ejecutar type services.msc y reinicie el servicio postgresql.
puede verificar si el parámetro está configurado o no a través de la herramienta de consulta. simplemente ejecute la consulta show port
. mostrará su número de puerto actual. Si está usando pgAdmin para conectarse a db, asegúrese de cambiar su número de puerto en la configuración de conexión.
Respuesta
Una solución que sí No requiere ningún reemplazo de texto o técnicas similares es configurar el puerto diferente en un archivo de configuración separado, luego agregar una directiva de inclusión al archivo postgresql.conf
.
Por ejemplo,
echo port = 5431 > \path\to\datadir\custom.conf echo include custom.conf>> \path\to\datadir\postgresql.conf
(Por supuesto \path\to\datadir\
debe reemplazarse con la ruta correcta)
El primer comando echo
crea un nuevo archivo con solo la configuración del puerto. El segundo agrega una directiva de inclusión al archivo de configuración de postgres existente. Como la configuración «posterior» anula la configuración «anterior» del archivo, cualquier configuración de puerto realizada en postgresql.conf
se sobrescribirá con la del archivo de configuración personalizado.
pg_ctl
.