DROP USER
Function
DROP USER deletes a user and the schema with the same name as the user.
Precautions
- CASCADE is used to delete the objects (excluding databases) that depend on the user. CASCADE cannot delete locked objects unless the objects are unlocked or the processes locking the objects are killed.
- In GaussDB, the postgresql.conf file contains the enable_kill_query parameter. This parameter affects CASCADE.
- If enable_kill_query is on and CASCADE is used, the statement automatically kills the processes locking dependent objects and then deletes the specified user.
- If enable_kill_query is off and CASCADE is used, the statement waits until the processes locking dependent objects stop and then deletes the specified user.
- If the dependent objects are other databases or reside in other databases, manually delete them before deleting the user from the current database. DROP USER cannot delete objects across databases.
- Before deleting a user, you need to delete all the objects owned by the user and revoke the user's permissions on other objects. Alternatively, you can specify CASCADE to delete the objects owned by the user and the granted permissions.
- In a multi-tenant scenario, the service user will also be deleted when you delete a user group. If you want to use CASCADE, set CASCADE for the service user as well. If any error is reported for one user, other users cannot be deleted either.
- If the user has an error table specified when the GDS foreign table is created, the user cannot be deleted by specifying the CASCADE keyword in the DROP USER statement.
- If a data source depends on the user, the user cannot be deleted directly. You need to manually delete the data source first.
Syntax
DROP USER [ IF EXISTS ] user_name [, ...] [ CASCADE | RESTRICT ];
Parameter Description
- IF EXISTS
Reports a notice instead of an error if the specified user does not exist.
- user_name
Specifies the name of the user to be deleted.
Value range: an existing username
- CASCADE | RESTRICT
- CASCADE: automatically deletes objects that depend on the user and revokes the permissions granted to the user.
- RESTRICT: refuses to delete a user if the user has any dependent objects or has been granted permissions on other objects. This is the default value.
In GaussDB, the postgresql.conf file contains the enable_kill_query parameter. This parameter affects CASCADE.
- If enable_kill_query is on and CASCADE is used, the statement automatically kills the processes locking dependent objects and then deletes the specified user.
- If enable_kill_query is off and CASCADE is used, the statement waits until the processes locking dependent objects stop and then deletes the specified user.
Examples
See Examples in CREATE USER.
Helpful Links
Feedback
Was this page helpful?
Provide feedbackThank you very much for your feedback. We will continue working to improve the documentation.See the reply and handling status in My Cloud VOC.
For any further questions, feel free to contact us through the chatbot.
Chatbot