文档首页 > > 开发指南> SQL参考> SQL语法> DROP USER

DROP USER

分享
更新时间: 2019/11/12 GMT+08:00

功能描述

删除用户,同时会删除同名的schema。

注意事项

  • 须使用CASCADE级联删除依赖用户的对象(除数据库外)。当删除用户的级联对象时,如果级联对象处于锁定状态,则此级联对象无法被删除,直到对象被解锁或锁定级联对象的进程被杀死。
  • 在数据库中删除用户时,如果依赖用户的对象在其他数据库中或者依赖用户的对象是其他数据库,请用户先手动删除其他数据库中的依赖对象或直接删除依赖数据库,再删除用户。即drop user不支持跨数据库进行级联删除。
  • 在多租户场景下,删除组用户时,业务用户也会同时被删除,如果指定CASCADE级联删除,那么删除业务用户时同时也指定CASCADE。如果在删除某个用户失败时,会报错,同时其他用户也无法成功删除。
  • 如果用户下存在创建GDS外表时指定的错误表,则无法通过drop user指定cascade关键字直接删除用户。

语法格式

DROP USER [ IF EXISTS ] user_name [, ...] [ CASCADE | RESTRICT ];

参数说明

  • IF EXISTS

    如果指定的用户不存在,发出一个notice而不是抛出一个错误。

  • user_name

    待删除的用户名。

    取值范围:已存在的用户名。

  • CASCADE | RESTRICT
    • CASCADE:级联删除依赖用户的对象。
    • RESTRICT:如果用户还有任何依赖的对象,则拒绝删除该用户(缺省行为)。

      DWS中,存在一个配置参数enable_kill_query,此参数在配置文件postgresql.conf中。此参数影响级联删除用户对象的行为:

      • 当参数enable_kill_query为on ,且使用CASCADE模式删除用户时,会自动kill锁定用户级联对象的进程,并删除用户。
      • 当参数enable_kill_query为off,且使用CASCADE模式删除用户时,会等待锁定级联对象的进程结束之后再删除用户。

示例

请参考CREATE USER的示例

相关链接

ALTER USERCREATE USER

分享:

    相关文档

    相关产品

文档是否有解决您的问题?

提交成功!

非常感谢您的反馈,我们会继续努力做到更好!

反馈提交失败,请稍后再试!

*必选

请至少选择或填写一项反馈信息

字符长度不能超过200

提交反馈 取消

如您有其它疑问,您也可以通过华为云社区问答频道来与我们联系探讨

跳转到云社区