Postgresql dice que no existe el usuario

Acabas de instalar en disco duro tu Knoppix, y decides que por qué no arrancar un servidor Postgresql con el que manejar tus bases de datos. Así que haces el correspondiente apt-get, instalas Postgresql y ejecutas el comando "createdb personal" para crear la base de datos "personal".

Y entonces, el muy estúpido va y te dice que ese usuario no existe (en mi caso, que no existe el usuario "lacofi").

Lo intentas como root, y entonces te dice que el usuario root tampoco existe. ¿Y ahora qué?.

Pues, efectivamente, puede que lacofi y root existan para Linux, pero no existen para Postgresql. Tienes que crearlos, eso es todo. Pero, lógicamente, solo podrás hacerlo logándote antes como el superusuario de Postgresql, que se llama ¡oh, sorpresa!, "postgres". Pero claro, ¿cuál es la contraseña de ese usuario?. Sin ella no puedes logarte, y comprobarás que te rechaza en cuanto intentas entrar sin meterla.

Bueno, ¿y para qué la necesitas si puedes ser root?. ¿Olvidas que root puede convertirse en cualquier usuario sin necesidad de contraseña?.

[lacofi@moira lacofi]$ su
password:
[root@moira lacofi]# su postgres
sh-2.05b$

Observa que acabamos de perder el inductor del sistema. Lógico. El usuario postgres existe, pero no tiene nada configurado, así que bash muestra el inductor más básico que tenga.

sh-2.05b$ createuser lacofi
Shall the new user be allowed to create databases? (y/n) y
Shall the new user be allowed to create more new users? (y/n) y
CREATE USER
sh-2.05b$ createuser maria
Shall the new user be allowed to create databases? (y/n) y
Shall the new user be allowed to create more new users? (y/n) y
CREATE USER
sh-2.05b$ createuser root
Shall the new user be allowed to create databases? (y/n) y
Shall the new user be allowed to create more new users? (y/n) y
CREATE USER

Bien, ya puestos, creamos usuarios postgresql para todos los usuarios linux del sistema. Así, cada cual tendrá sus propias bases de datos. Luego habría que definir contraseñas, claro, pero eso esa es otra historia. En cualquier caso, una vez creados los usuarios, ya no hay problema en crear bases de datos.

sh-2.05b$ exit
[root@moira lacofi]# exit
[lacofi@moira lacofi]$ createdb personal
CREATE DATABASE

El resto está en los manuales de Postgresql.

Be Sociable, Share!

Puedes seguir cualquier respuesta a esta entrada mediante el canal RSS 2.0. Puedes dejar un comentario o enviar un trackback desde tu propio sitio.

Deja un comentario

Disculpa, debes iniciar sesión para escribir un comentario.