357 votos

¿Qué ' s el superusuario default username/contraseña para postgres después de una instalación nueva?

Acabo de instalar postgres 8.4 en Ubuntu 9.10 y nunca ha pedido crear un superusuario. ¿Existe un superusuario por defecto y su contraseña? Si no, ¿Cómo creo una nueva?

506voto

user716468 Puntos 2294

PRECAUCIÓN La respuesta acerca de cómo cambiar la contraseña de UNIX para "postgres" a través de "$ sudo passwd postgres" no es el preferido, e incluso puede ser PELIGROSO!

Esta es la razón: de forma predeterminada, la cuenta de UNIX "postgres" está bloqueado, lo que significa que no se pueden registrar en el uso de una contraseña. Si usar "sudo passwd postgres", la cuenta es inmediatamente desbloqueado. Peor aún, si se establece la contraseña para algo débil, como "postgres", entonces usted está expuesto a un gran peligro la seguridad. Por ejemplo, hay un número de bots por ahí tratando de que el nombre de usuario/contraseña combo "postgres/postgres" para iniciar sesión en el sistema UNIX.

Lo que usted debe hacer es seguir Chris James's respuesta:

sudo -u postgres psql postgres

# \password postgres

Enter new password: 

Para explicarlo un poco. Generalmente hay dos formas de inicio de sesión de PostgreSQL:

  1. Mediante la ejecución de la "psql" comando como usuario de UNIX (la llamada IDENT/PARES de autenticación), por ejemplo,: sudo -u postgres psql.

  2. por conexión TCP/IP utilizando PostgreSQL propio administrado nombre de usuario/contraseña (los llamados TCP autenticación) (es decir, NO la contraseña de UNIX).

Así que usted nunca desea establecer la contraseña para la cuenta de UNIX "postgres". Dejar encerrado como está por defecto.

Por supuesto, las cosas pueden cambiar si la configura de manera diferente de la configuración predeterminada. Por ejemplo, uno puede sincronizar el PostgreSQL contraseña con la contraseña de UNIX y sólo permitir inicios de sesión locales. Que estaría más allá del alcance de esta pregunta.

162voto

Chris James Puntos 774

Escriba en la línea de comandos:

$ sudo -u postgres psql postgres
\# \password postgres

Usted verá:

Enter new password: 

60voto

Ari Puntos 156

Manipulas postgres por el usuario postgres , así:

# su - postgres
$ createdb mydb
$ psql -s mydb
# create user someuser password 'somepassword';
# GRANT ALL PRIVILEGES ON DATABASE mydb TO someuser;

5voto

Jakub Šturc Puntos 12549

Probablemente muy relevante - "estoy instalando PostgreSQL y no sabe la contraseña para el usuario postgres".

5voto

Mirek Rusin Puntos 5880

Si usted está intentando acceder al shell de PostgreSQL, puede escribir:

psql -U postgres my_database

Donde my_database es el nombre de base de datos.

EnMiMaquinaFunciona.com

EnMiMaquinaFunciona es una comunidad de administradores de sistemas en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros sysadmin, hacer tus propias preguntas o resolver las de los demás.

Powered by: