Hay varias posibles razones para que postmaster no pueda
inicializarse. Compruebe el fichero de registro de postmaster, o
in�cielo manualmente (sin redirigir la salida est�ndar o la de
errores) para ver los mensajes que aparecen. Alguno de los posibles
mensajes de error son autoexplicativos, pero los hay que pueden no
serlos tanto:
FATAL: StreamServerPort: bind() failed: Address already in use
Is another postmaster already running on that port?
|
Esto normalmente significa lo que sugiere: accidentalmente ha
iniciado una segunda instancia de postmaster en el mismo puerto en el
que ya se est� ejecutando uno. Sin embargo, si el mensaje de error
del n�cleo no es "Address already in use" o alguna variante, puede
estar ocurriendo otro problema. Por ejemplo, el tratar de iniciar una
sesi�n de postmaster en un puerto de error reservado puede producir
algo como:
$ postmaster -i -p 666
FATAL: StreamServerPort: bind() failed: Permission denied
Is another postmaster already running on that port?
|
IpcMemoryCreate: shmget failed (Invalid argument) key=5440001, size=83918612, permission=600
FATAL 1: ShmemCreate: cannot create region
|
Un mensaje como �ste posiblemente indica que el limite impuesto al
tama�o de las zonas de memoria compartidas es menor que �rea de
�buffer� que Postgres est� intentando crear. (O puede significar que no
dispone de soporte para la memoria compartida de tipo SysV configurado
en su n�cleo.) Como arreglo temporal puede tratar de iniciar
postmaster con un n�mero de �buffers� menor de lo normal (par�metro -B).
Sin embargo, deber�a reconfigurar su n�cleo para incrementar el
tama�o permitido para la memoria compartida.
Este mensaje puede aparecer cuando trate de iniciar varias sesiones de
postmaster en la misma m�quina, si el total de espacio necesario
excede el l�mite impuesto por el n�cleo.
IpcSemaphoreCreate: semget failed (No space left on device) key=5440026, num=16, permission=600
|
Un mensaje como �ste
no significa que se haya
quedado sin espacio en el disco; significa que la cantidad m�xima de
sem�foros permitidos por el n�cleo para el SysV es menor que la
cantidad que Postgres intenta crear. Como antes, puede evitar este
problema iniciando el postmaster con un numero de procesos �backend�
menor (par�metro -N), pero ser�a mejor que incrementara el l�mite
impuesto por el n�cleo.