How to create user for a db in postgresql? [closed] How to create user for a db in postgresql? [closed] postgresql postgresql

How to create user for a db in postgresql? [closed]


From CLI:

$ su - postgres $ psql template1template1=# CREATE USER tester WITH PASSWORD 'test_password';template1=# GRANT ALL PRIVILEGES ON DATABASE "test_database" to tester;template1=# \q

PHP (as tested on localhost, it works as expected):

  $connString = 'port=5432 dbname=test_database user=tester password=test_password';  $connHandler = pg_connect($connString);  echo 'Connected to '.pg_dbname($connHandler);


Create the user with a password :

http://www.postgresql.org/docs/current/static/sql-createuser.html

CREATE USER name [ [ WITH ] option [ ... ] ]where option can be:      SUPERUSER | NOSUPERUSER    | CREATEDB | NOCREATEDB    | CREATEROLE | NOCREATEROLE    | CREATEUSER | NOCREATEUSER    | INHERIT | NOINHERIT    | LOGIN | NOLOGIN    | REPLICATION | NOREPLICATION    | CONNECTION LIMIT connlimit    | [ ENCRYPTED | UNENCRYPTED ] PASSWORD 'password'    | VALID UNTIL 'timestamp'    | IN ROLE role_name [, ...]    | IN GROUP role_name [, ...]    | ROLE role_name [, ...]    | ADMIN role_name [, ...]    | USER role_name [, ...]    | SYSID uid

Then grant the user rights on a specific database :

http://www.postgresql.org/docs/current/static/sql-grant.html

Example :

grant all privileges on database db_name to someuser;