Updated on 2025-02-27 GMT+08:00

ALTER USER

Description

Alters the attributes of a database user.

Precautions

Session parameters modified by ALTER USER apply to a specified user and take effect in the next session.

Syntax

  • Modify user permissions or other information.
    ALTER USER user_name [ [ WITH ] option [ ... ] ];

    The option clause is as follows:

    { CREATEDB | NOCREATEDB }
        | { CREATEROLE | NOCREATEROLE }
        | { INHERIT | NOINHERIT }
        | { AUDITADMIN | NOAUDITADMIN }
        | { SYSADMIN | NOSYSADMIN }
        | {MONADMIN | NOMONADMIN}
        | {OPRADMIN | NOOPRADMIN}
        | {POLADMIN | NOPOLADMIN}
        | { USEFT | NOUSEFT }
        | { LOGIN | NOLOGIN }
        | { REPLICATION | NOREPLICATION }
        | {VCADMIN | NOVCADMIN}
        | {PERSISTENCE | NOPERSISTENCE}
        | CONNECTION LIMIT connlimit
        | [ ENCRYPTED | UNENCRYPTED ] PASSWORD { 'password' [EXPIRED] | DISABLE | EXPIRED }
        | [ ENCRYPTED | UNENCRYPTED ] IDENTIFIED BY { 'password' [ REPLACE 'old_password' | EXPIRED ] | DISABLE }
        | VALID BEGIN 'timestamp'
        | VALID UNTIL 'timestamp'
        | PERM SPACE 'spacelimit'
        | PGUSER
  • Change the username.
    ALTER USER user_name 
        RENAME TO new_name;
  • Lock or unlock.
    ALTER USER user_name
        ACCOUNT { LOCK | UNLOCK };
  • Change the value of a specified parameter associated with the user.
    ALTER USER user_name 
        SET configuration_parameter { { TO | = } { value | DEFAULT } | FROM CURRENT };
  • Reset the value of a specified parameter associated with the user.
    ALTER USER user_name 
        RESET { configuration_parameter | ALL };

Parameters

  • user_name

    Specifies the current username.

    Value range: an existing username. If a username contains uppercase letters, enclose the name with double quotation marks ("").

  • new_password

    Specifies a new password.

    The new password must:

    • Differ from the old password.
    • Contain at least eight characters. This is the default length.
    • Differ from the username or the username spelled backward.
    • Contain at least three of the following character types: uppercase characters, lowercase characters, digits, and special characters (limited to ~!@#$ %^&*()-_=+\|[{}];:,<.>/?). If the password contains characters other than the preceding characters, an error will be reported during statement execution.
    • The user password should be enclosed in single quotation marks (').

    Value range: a string.

  • old_password

    Specifies the old password.

  • ACCOUNT { LOCK | UNLOCK }
    • ACCOUNT LOCK: locks an account to forbid login to databases.
    • ACCOUNT UNLOCK: unlocks an account to allow login to databases.
  • PGUSER

    In the current version, the PGUSER attribute of a user cannot be modified.

For details about other parameters, see "Parameters" in CREATE ROLE and ALTER ROLE.

Examples

See Examples in "CREATE USER."

Helpful Links

CREATE ROLE, CREATE USER, and DROP USER