Pregunta

Instalé Postgres con el instalador de Kyngchaos hace un par de meses. Ahora he actualizado a OSX Lion, pero el servidor de la base de datos no se inicia.

Un comentario en el blog de Kyngchaos (http://www.kyngchaos.com/blog/2011/20110723_lion) me hizo mirar al usuario de 'Postgres': ¡ya no existe! Al menos, ya no puedo "sudo Su Postgres". Así que creo que esa es la razón por la que mi servidor no se ejecuta.

¿Cómo puedo restaurar mejor a ese usuario?

¿Fue útil?

Solución

(Respondiendo a mí mismo)

Al final, lo único que tenía que hacer era recrear al usuario de "Postgres". De antemano, enumeré el contenido de /usr/local/pgsql/ y vi eso por ejemplo el data/ El directorio era propiedad del usuario 101 y grupo postgres. Así que quería vincular a ese usuario de Postgres al 101 ID de usuario:

sudo dscl . -create /Users/postgres
sudo dscl . -create /Users/postgres UniqueID 101

(Y luego reinicié mi Mac ya que no sabía cómo comenzar ese servidor de Postgres a mano ... ;-)

Otros consejos

Creo que, en tu comando DSCL, en lugar de hacer un -create, quieres hacer un -append. Apple tiende a prefijo debajo de los nombres de usuario de Daemon. Entonces, Apple probablemente creó una etiqueta _postgres para el usuario 101. Al hacer un -create, está eliminando el usuario predeterminado de _postgres y reemplazándolo con Postgres, lo que podría causar otros problemas en el futuro. Mientras que si haces un -append, entonces puedes usuario o _postgres o postgres Para hacer referencia al usuario 101. En cualquier caso, debe hacer un -list Antes de hacer un -create o un -append, para que conozcas el laico de la tierra.

Nota: Todavía estoy ejecutando Snow Leopard, así que no puedo verificar que el usuario 101 sea de hecho _postgres, pero espero que Apple todavía esté usando las mismas convenciones de nombres que en Leopard & Snow Leopard, y así es como debería funcionar. Haciendo un -list Te mostrará lo que necesitas saber para confirmar mis sospechas.

Tenía un problema similar y miraba a través de System.log en la consola, había varios mensajes sobre los permisos en el directorio de datos PostgreSQL. Jugué con Chown y otras cosas, pero terminé simplemente reinstalando, todo funciona bien ahora.

No obtuve un usuario adecuado siguiendo la respuesta de @reinout Van Rees en Mountain Lion. Estos son mis pasos para que esto funcione:

  • Descargar e instalar Gerente de trabajo
  • Inicie sesión en LDAP local: {Servidor: 127.0.01, Uname: [Your Uname], PW: [Su PW]}
  • Establecer View-> Mostrar registros del sistema para mostrar todas las cuentas
  • Controlar postgres no está allí y no hay otro usuario con ID 101.
  • Desbloquear gerente con icono de bloqueo
  • Crear nuevo usuario {Basic: {name: Postgres, UserID: 101, PW: None, Can_admin_server: False, Access_Account: False}, Advanced: {Login_shell:/usr/bin/false}}
  • Dio algunos errores extraños, pero al final creó mi usuario
  • Prueba de postgrres (sudo -u postgres PGDATA=/usr/local/pgsql-9.0/data /usr/local/pgsql-9.0/bin/pg_ctl start)
  • >> Server started
Licenciado bajo: CC-BY-SA con atribución
No afiliado a StackOverflow
scroll top