创建DWS数据库用户和角色
创建DWS数据库用户和角色操作支持通过控制台进行可视化配置,无需直接编写SQL代码。在创建用户前,可以先创建角色,即先预置一些常用角色,例如拥有创建数据库的角色,再创建用户,在创建用户的过程将预先创建好的角色授权予该用户。其中角色是拥有数据库对象和权限的实体,在创建角色前可根据业务实际需求创建相应的业务数据库(DWS默认的数据库gaussdb一般不作为客户的业务数据库使用,且考虑业务隔离,建议为不同业务创建独立的数据库)。
角色是一组权限的集合,用户和角色的关系,详情请参见权限管理。
用户、角色和相应的权限列表支持导出和导入,详情参见角色管理操作和数据库用户管理操作。
视频介绍
典型使用流程
首次创建DWS集群后,需使用系统管理员dbadmin首次连接gaussdb数据库,按以下顺序进行初始化配置:
示例:
- 新建业务场景:公司新上线一个订单管理系统,需创建order_db数据库、order_admin角色(拥有订单表的增删改查权限)和order_user用户(授予order_admin角色)。
- 数据迁移场景:将上游业务数据迁移到DWS时,需根据上游系统的用户和权限规划,在DWS中创建对应的数据库、用户和角色。
约束和限制
- 尽量避免所有业务使用同一个数据库用户运行,请按业务模块规划不同数据库用户。
- 不建议使用系统管理员(dbadmin)运行业务,不同模块业务请通过多用户和权限进行访问控制。
使用系统管理员运行业务存在安全风险,一旦误操作可能影响整个集群的数据和配置。请务必为不同业务模块创建独立的数据库用户,并遵循最小权限原则授权。
- DWS数据库自主开发过程中应遵守的设计规范参见总体开发设计规范。
- 集群创建时自动生成的系统用户/角色不允许修改。
新建数据库
支持通过DDL语法或通过SQL编辑器创建。
- DDL语法方式创建:创建语法参见《SQL语法参考》中的“CREATE DATABASE”语法章节。
- SQL编辑器方式创建:使用SQL编辑器连接DWS集群。
创建角色
- 登录DWS管理控制台。
- 在左侧导航栏中,选择“集群 > 集群列表”。
- 在集群列表中,单击指定集群的名称,进入“集群详情”页面。
- 在上侧导航栏单击“用户管理”,进入用户管理页面。
- 切换至“角色列表”页签,单击“创建角色”,跳转至创建角色详情页面。
- 完善常规配置角色信息,参数描述如下所示:
表1 角色信息常规配置参数信息 参数名称
描述
角色名称
以字母开头,可以包含字母、数字、下划线,长度不超过63个字符。
到期时间
设置该角色权限的到期截止时间。到期后,该角色的权限将自动失效,被授予该角色的用户将失去对应权限。如不设置则永不过期。
系统管理员
是否授予该角色系统管理员权限。拥有此权限的角色可执行所有数据库操作,包括管理其他用户、角色和数据库对象。请谨慎授权,日常业务角色不建议开启此权限。
创建数据库
是否授予该角色创建数据库权限。
创建角色
是否授予该角色创建新用户/角色权限。
继承权限
是否自动继承该角色所属角色组的权限。默认开启,不推荐关闭。若关闭,该角色即使被授予了其他角色,也不会自动获得其权限,需手动逐项授权。
描述
对创建的角色的补充说明,如角色用途、所属业务模块等,不超过500个字符。
- 确认无误后,单击“下一步”。
- 权限配置,配置该角色拥有的权限。
单击“添加”,添加一条权限配置,选择数据库对象类型以及对应的数据库对象。然后选择权限进行授权,确认无误后单击“保存”。具体权限释义,请参见《SQL语法参考》中的“DCL语法 > GRANT”章节。

- 授权完毕,单击“立即创建”。完成角色创建。
创建数据库用户
数据库用户支持通过DDL语法或通过DWS管理控制台创建。DDL语法请参见《SQL语法参考》中的“CREATE USER”语法章节。
前提条件
请先确保集群状态为“可用”。
操作步骤
- 登录DWS管理控制台。
- 在左侧导航栏中,选择“集群 > 集群列表”。
- 在集群列表中,单击指定集群的名称,进入“集群详情”页面。
- 在上侧导航栏单击“用户管理”,进入用户管理页面。
- 在“用户列表”页签,单击“创建用户”,跳转至创建用户详情页面。
- 进入“常规配置”页面,参数说明如下所示:
表2 用户信息常规配置参数说明 参数名称
描述
用户名称
以字母开头,可以包含字母、数字、下划线,长度不超过63个字符。
密码
用户登录数据库的密码,可以包含字母、数字、下划线及特殊字符,长度12~32个字符。
- 密码至少包含大写字母、小写字母、数字和特殊字符四类中的三类,其中可输入的特殊字符为:(~!?,.:;_(){}[]/<>@#%^&*+|\=-)。
- 不能与用户名或倒序的用户名相同。
连接数限制
该用户并发连接数据库的最大连接数,-1表示不限制。建议根据业务实际并发量合理设置,避免单个用户占用过多连接资源。
到期时间
设置该用户账号的有效期截止时间。到期后,该用户将无法登录数据库。如不设置则永不过期。
逻辑集群(集群为逻辑集群参数)
下拉框选择创建用户所属的逻辑集群。在物理集群模式下不显示该参数。
系统管理员
是否授予该用户系统管理员权限。拥有此权限的用户可执行所有数据库操作,包括管理其他用户、角色和数据库对象。请谨慎授权,日常业务用户不建议开启此权限。
创建数据库
是否授予该用户创建数据库权限。
创建角色
是否授予该用户创建新用户、角色权限。
继承权限
是否自动继承该用户所属角色组的权限。默认开启,不推荐关闭。若关闭,该用户即使被授予了角色,也不会自动获得其权限,需手动逐项授权。
描述
对创建的用户的补充说明,如用户用途,所属业务模块等,不超过500个字符。
- 确认无误后,单击“下一步”。
- 进入“角色配置”页面,选择需要对该用户授权的角色,确定后单击“下一步”。
- 权限配置,对该用户授权角色后,如果还需要补充其他权限,可以单独配置。
单击“添加”,添加一条权限配置,选择数据库对象类型以及对应的数据库对象,然后选择权限进行授权,确认无误后单击“保存”。具体权限释义,请参见《SQL语法参考》中的“DCL语法 > GRANT”章节。

- 授权完毕,单击“立即创建”完成用户创建。
角色管理操作
- 登录DWS管理控制台。
- 在左侧导航栏中,选择“集群 > 集群列表”。
- 在集群列表中,单击指定集群的名称,进入“集群详情”页面。
- 在上侧导航栏单击“用户管理”,进入用户管理页面。
- 切换至“角色列表”页签,可对已创建的角色执行以下操作。
表3 角色管理操作 操作入口
说明
修改角色
在角色列表中选择指定角色,单击“修改”,跳转至修改角色详情页面。授权完毕,单击“保存”完成修改。
- 修改角色信息,具体信息请参见表1。
- 权限配置,根据需要选择权限类型,单击操作列的“编辑”,再在权限列单击“修改”对权限进行添加或移除。
导出角色
在角色列表上方单击“导出”,选择导出条数,单击“导出”即可导出角色列表。
导出角色权限
在角色列表选择指定角色,单击“导出权限”,在弹窗中输入导出数据量,单击“导出”即可导出角色权限。
删除角色
在角色列表中选择指定角色,单击“删除”,弹出确认页面。单击“确定”删除角色。
删除操作前需先确认是否存在未删除的数据库对象等依赖关系,如果有的话请先删除关系,否则角色将删除失败。
数据库用户管理操作
- 登录DWS管理控制台。
- 在左侧导航栏中,选择“集群 > 集群列表”。
- 在集群列表中,单击指定集群的名称,进入“集群详情”页面。
- 在上侧导航栏单击“用户管理”,进入用户管理页面。可对已创建的数据库用户执行以下操作。
表4 用户管理操作 操作入口
说明
修改用户
在用户列表中选择指定用户,单击“修改”,跳转至修改用户详情页面。授权完毕,单击“保存”完成修改。
- 修改用户信息,具体信息请参见表2。
- 角色配置,修改需要对该用户授权的角色。
- 权限配置,选择权限类型后,单击操作列的“编辑”,再在权限列单击“修改”对权限进行添加或移除。
导出用户
在用户列表上方单击“导出”,选择导出条数,单击“导出”即可导出用户列表。
导出用户权限
在用户列表选择指定用户,单击“导出权限”,在弹窗中输入导出数据量,单击“导出”即可导出用户拥有权限列表。其中物理集群的dbadmin用户权限属于系统内置,则“导出权限”按钮置灰,不支持导出权限。
导入用户权限
在用户列表选择指定用户,选择“更多 > 导入权限”,并指定对应权限文件,即可将权限导入到当前用户。
删除用户
在用户列表选择指定用户,选择“更多 > 删除”,单击“确定”删除用户。
- 删除操作前需先确认是否存在未删除的表等数据库对象依赖关系,如果有的话请先删除关系,否则用户将删除失败。
- 如果勾选“强制删除,自动解除依赖关系”则当前用户名下的表、函数及其他数据库对象,将转移至管理员账号名下。
相关文档
- 创建角色:CREATE ROLE
- 创建用户:CREATE USER
- 用户和角色:用户和角色