文档首页/ 数据仓库服务 DWS/ 用户指南/ 创建DWS数据库用户和角色
更新时间:2026-08-03 GMT+08:00
分享

创建DWS数据库用户和角色

创建DWS数据库用户和角色操作支持通过控制台进行可视化配置,无需直接编写SQL代码。在创建用户前,可以先创建角色,即先预置一些常用角色,例如拥有创建数据库的角色,再创建用户,在创建用户的过程将预先创建好的角色授权予该用户。其中角色是拥有数据库对象和权限的实体,在创建角色前可根据业务实际需求创建相应的业务数据库(DWS默认的数据库gaussdb一般不作为客户的业务数据库使用,且考虑业务隔离,建议为不同业务创建独立的数据库)。

角色是一组权限的集合,用户和角色的关系,详情请参见权限管理

用户、角色和相应的权限列表支持导出和导入,详情参见角色管理操作数据库用户管理操作

视频介绍

典型使用流程

首次创建DWS集群后,需使用系统管理员dbadmin首次连接gaussdb数据库,按以下顺序进行初始化配置:

图1 创建用户典型流程

示例:

  • 新建业务场景:公司新上线一个订单管理系统,需创建order_db数据库、order_admin角色(拥有订单表的增删改查权限)和order_user用户(授予order_admin角色)。
  • 数据迁移场景:将上游业务数据迁移到DWS时,需根据上游系统的用户和权限规划,在DWS中创建对应的数据库、用户和角色。

约束和限制

  • 尽量避免所有业务使用同一个数据库用户运行,请按业务模块规划不同数据库用户。
  • 不建议使用系统管理员(dbadmin)运行业务,不同模块业务请通过多用户和权限进行访问控制。

    使用系统管理员运行业务存在安全风险,一旦误操作可能影响整个集群的数据和配置。请务必为不同业务模块创建独立的数据库用户,并遵循最小权限原则授权。

  • DWS数据库自主开发过程中应遵守的设计规范参见总体开发设计规范
  • 集群创建时自动生成的系统用户/角色不允许修改。

新建数据库

支持通过DDL语法或通过SQL编辑器创建。

创建角色

  1. 登录DWS管理控制台
  2. 在左侧导航栏中,选择“集群 > 集群列表”
  3. 在集群列表中,单击指定集群的名称,进入“集群详情”页面。
  4. 在上侧导航栏单击“用户管理”,进入用户管理页面。
  5. 切换至“角色列表”页签,单击“创建角色”,跳转至创建角色详情页面。
  6. 完善常规配置角色信息,参数描述如下所示:

    表1 角色信息常规配置参数信息

    参数名称

    描述

    角色名称

    以字母开头,可以包含字母、数字、下划线,长度不超过63个字符。

    到期时间

    设置该角色权限的到期截止时间。到期后,该角色的权限将自动失效,被授予该角色的用户将失去对应权限。如不设置则永不过期。

    系统管理员

    是否授予该角色系统管理员权限。拥有此权限的角色可执行所有数据库操作,包括管理其他用户、角色和数据库对象。请谨慎授权,日常业务角色不建议开启此权限。

    创建数据库

    是否授予该角色创建数据库权限。

    创建角色

    是否授予该角色创建新用户/角色权限。

    继承权限

    是否自动继承该角色所属角色组的权限。默认开启,不推荐关闭。若关闭,该角色即使被授予了其他角色,也不会自动获得其权限,需手动逐项授权。

    描述

    对创建的角色的补充说明,如角色用途、所属业务模块等,不超过500个字符。

  7. 确认无误后,单击“下一步”
  8. 权限配置,配置该角色拥有的权限。

    单击“添加”,添加一条权限配置,选择数据库对象类型以及对应的数据库对象。然后选择权限进行授权,确认无误后单击“保存”。具体权限释义,请参见《SQL语法参考》中的“DCL语法 > GRANT”章节。

  9. 授权完毕,单击“立即创建”。完成角色创建。

创建数据库用户

数据库用户支持通过DDL语法或通过DWS管理控制台创建。DDL语法请参见《SQL语法参考》中的“CREATE USER”语法章节。

前提条件

请先确保集群状态为“可用”。

操作步骤

  1. 登录DWS管理控制台
  2. 在左侧导航栏中,选择“集群 > 集群列表”
  3. 在集群列表中,单击指定集群的名称,进入“集群详情”页面。
  4. 在上侧导航栏单击“用户管理”,进入用户管理页面。
  5. “用户列表”页签,单击“创建用户”,跳转至创建用户详情页面。
  6. 进入“常规配置”页面,参数说明如下所示:

    表2 用户信息常规配置参数说明

    参数名称

    描述

    用户名称

    以字母开头,可以包含字母、数字、下划线,长度不超过63个字符。

    密码

    用户登录数据库的密码,可以包含字母、数字、下划线及特殊字符,长度12~32个字符。

    • 密码至少包含大写字母、小写字母、数字和特殊字符四类中的三类,其中可输入的特殊字符为:(~!?,.:;_(){}[]/<>@#%^&*+|\=-)。
    • 不能与用户名或倒序的用户名相同。

    连接数限制

    该用户并发连接数据库的最大连接数,-1表示不限制。建议根据业务实际并发量合理设置,避免单个用户占用过多连接资源。

    到期时间

    设置该用户账号的有效期截止时间。到期后,该用户将无法登录数据库。如不设置则永不过期。

    逻辑集群(集群为逻辑集群参数)

    下拉框选择创建用户所属的逻辑集群。在物理集群模式下不显示该参数。

    系统管理员

    是否授予该用户系统管理员权限。拥有此权限的用户可执行所有数据库操作,包括管理其他用户、角色和数据库对象。请谨慎授权,日常业务用户不建议开启此权限。

    创建数据库

    是否授予该用户创建数据库权限。

    创建角色

    是否授予该用户创建新用户、角色权限。

    继承权限

    是否自动继承该用户所属角色组的权限。默认开启,不推荐关闭。若关闭,该用户即使被授予了角色,也不会自动获得其权限,需手动逐项授权。

    描述

    对创建的用户的补充说明,如用户用途,所属业务模块等,不超过500个字符。

  7. 确认无误后,单击“下一步”
  8. 进入“角色配置”页面,选择需要对该用户授权的角色,确定后单击“下一步”
  9. 权限配置,对该用户授权角色后,如果还需要补充其他权限,可以单独配置。

    单击“添加”,添加一条权限配置,选择数据库对象类型以及对应的数据库对象,然后选择权限进行授权,确认无误后单击“保存”。具体权限释义,请参见《SQL语法参考》中的“DCL语法 > GRANT”章节。

  10. 授权完毕,单击“立即创建”完成用户创建。

角色管理操作

  1. 登录DWS管理控制台
  2. 在左侧导航栏中,选择“集群 > 集群列表
  3. 在集群列表中,单击指定集群的名称,进入“集群详情”页面。
  4. 在上侧导航栏单击“用户管理”,进入用户管理页面。
  5. 切换至“角色列表”页签,可对已创建的角色执行以下操作。

    表3 角色管理操作

    操作入口

    说明

    修改角色

    在角色列表中选择指定角色,单击“修改”,跳转至修改角色详情页面。授权完毕,单击“保存”完成修改。

    • 修改角色信息,具体信息请参见表1
    • 权限配置,根据需要选择权限类型,单击操作列的“编辑”,再在权限列单击“修改”对权限进行添加或移除。

    导出角色

    在角色列表上方单击“导出”,选择导出条数,单击“导出”即可导出角色列表。

    导出角色权限

    在角色列表选择指定角色,单击“导出权限”,在弹窗中输入导出数据量,单击“导出”即可导出角色权限。

    删除角色

    在角色列表中选择指定角色,单击“删除”,弹出确认页面。单击“确定”删除角色。

    删除操作前需先确认是否存在未删除的数据库对象等依赖关系,如果有的话请先删除关系,否则角色将删除失败。

数据库用户管理操作

  1. 登录DWS管理控制台
  2. 在左侧导航栏中,选择“集群 > 集群列表
  3. 在集群列表中,单击指定集群的名称,进入“集群详情”页面。
  4. 在上侧导航栏单击“用户管理”,进入用户管理页面。可对已创建的数据库用户执行以下操作。

    表4 用户管理操作

    操作入口

    说明

    修改用户

    在用户列表中选择指定用户,单击“修改”,跳转至修改用户详情页面。授权完毕,单击“保存”完成修改。

    • 修改用户信息,具体信息请参见表2
    • 角色配置,修改需要对该用户授权的角色。
    • 权限配置,选择权限类型后,单击操作列的“编辑”,再在权限列单击“修改”对权限进行添加或移除。

    导出用户

    在用户列表上方单击“导出”,选择导出条数,单击“导出”即可导出用户列表。

    导出用户权限

    在用户列表选择指定用户,单击“导出权限”,在弹窗中输入导出数据量,单击“导出”即可导出用户拥有权限列表。其中物理集群的dbadmin用户权限属于系统内置,则“导出权限”按钮置灰,不支持导出权限。

    导入用户权限

    在用户列表选择指定用户,选择“更多 > 导入权限”,并指定对应权限文件,即可将权限导入到当前用户。

    删除用户

    在用户列表选择指定用户,选择“更多 > 删除”,单击“确定”删除用户。

    • 删除操作前需先确认是否存在未删除的表等数据库对象依赖关系,如果有的话请先删除关系,否则用户将删除失败。
    • 如果勾选“强制删除,自动解除依赖关系”则当前用户名下的表、函数及其他数据库对象,将转移至管理员账号名下。

相关文档

相关文档