Philippe Salama <karebacnyc@yahoo.com> writes:
> My textbook had me create a user named rick, with the power to create databases, but not the power to create new
users.
> in the next exercise, I am in template1 as user neil, who has the prompt =# which means that neil has power to create
databases. I am told to \c bpsimple rick, and it says NOTICE THE PROMPT changes to =>, meaning rick has no power to
createdatabases.
How old is your textbook?
What the # prompt actually means is that you are a "superuser", which
means you can do anything at all within PostgreSQL (equivalent to root
on a Unix system, and I-dunno-what on Windows). Creating databases
is a lesser privilege. It used to be that creating users was only
allowed to a superuser, but now we have a lesser privilege that allows
non-superusers to create more (non-super) users. In any case, if you
are superuser you can definitely do both of those things.
If the book equates the # prompt to create-database privilege then it's
flat out wrong, or at least has been for as long as I can remember.
If it equates # to create-user privilege then it's only been wrong for
the last release or two.
regards, tom lane