Difference between revisions of "PostgreSQL: CREATE USER"

From wikieduonline
Jump to navigation Jump to search
Line 2: Line 2:
 
* Official documentation: https://www.postgresql.org/docs/15/sql-createuser.html
 
* Official documentation: https://www.postgresql.org/docs/15/sql-createuser.html
  
<pre>
 
CREATE USER name [ [ WITH ] option [ ... ] ]
 
  
where option can be:
+
CREATE USER name [ [ WITH ] option [ ... ] ]
 
+
      SUPERUSER | NOSUPERUSER
+
where option can be:
    | CREATEDB | NOCREATEDB
+
    | CREATEROLE | NOCREATEROLE
+
      SUPERUSER | NOSUPERUSER
    | INHERIT | NOINHERIT
+
    | CREATEDB | NOCREATEDB
    | LOGIN | NOLOGIN
+
    | CREATEROLE | NOCREATEROLE
    | REPLICATION | NOREPLICATION
+
    | INHERIT | NOINHERIT
    | BYPASSRLS | NOBYPASSRLS
+
    | LOGIN | NOLOGIN
    | CONNECTION LIMIT connlimit
+
    | REPLICATION | NOREPLICATION
    | [ ENCRYPTED ] PASSWORD 'password' | PASSWORD NULL
+
    | BYPASSRLS | NOBYPASSRLS
    | VALID UNTIL 'timestamp'
+
    | CONNECTION LIMIT connlimit
    | IN ROLE role_name [, ...]
+
    | [ ENCRYPTED ] PASSWORD 'password' | PASSWORD NULL
    | IN GROUP role_name [, ...]
+
    | VALID UNTIL 'timestamp'
    | ROLE role_name [, ...]
+
    | [[IN ROLE]] role_name [, ...]
    | ADMIN role_name [, ...]
+
    | [[IN GROUP]] role_name [, ...]
    | USER role_name [, ...]
+
    | [[ROLE]] role_name [, ...]
    | SYSID uid
+
    | ADMIN role_name [, ...]
</pre>
+
    | USER role_name [, ...]
 +
    | SYSID uid
  
  

Revision as of 14:24, 15 December 2022

create user, creates a new user in PostgreSQL


CREATE USER name [ [ WITH ] option [ ... ] ]

where option can be:

      SUPERUSER | NOSUPERUSER
    | CREATEDB | NOCREATEDB
    | CREATEROLE | NOCREATEROLE
    | INHERIT | NOINHERIT
    | LOGIN | NOLOGIN
    | REPLICATION | NOREPLICATION
    | BYPASSRLS | NOBYPASSRLS
    | CONNECTION LIMIT connlimit
    | [ ENCRYPTED ] PASSWORD 'password' | PASSWORD NULL
    | VALID UNTIL 'timestamp'
    | IN ROLE role_name [, ...]
    | IN GROUP role_name [, ...]
    | ROLE role_name [, ...]
    | ADMIN role_name [, ...]
    | USER role_name [, ...]
    | SYSID uid


Examples

  • create user your_username

Create a new user

create user your_username;
Output:
CREATE ROLE
create user your_username;
Output:
ERROR: permission denied to create role

Create a new user with errors

create user your.username;
Output:
ERROR:  syntax error at or near "."
create user your_username;
ERROR:  cannot execute CREATE ROLE in a read-only transaction

Create a new user and assign a password

CREATE USER your_username WITH ENCRYPTED PASSWORD 'your_pass';
Output:
CREATE ROLE
CREATE USER your_username WITH ENCRYPTED PASSWORD 'your_pass';
Output:
ERROR:  role "your_username" already exists
Solution:
ALTER USER user_name WITH PASSWORD 'new_password';
Assign a role with GRANT command:
GRANT your_defined_role TO your_username;
Output:
GRANT ROLE
  • CREATE USER username WITH CREATEUSER

Related terms

See also

Advertising: