暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

华为GaussDB T CREATE USER

墨天轮 2019-10-12
520

CREATE USER

功能描述

创建一个数据库用户。

注意事项

  • 执行该语句的用户需要有CREATE USER系统权限。
  • 用户名不能和数据库中已存在的用户名和角色名重复,否则会提示错误:user *name* already exists。
  • 创建用户时,需要指定用户名和密码。
  • SYS用户和PUBLIC用户不允许创建,是系统预置用户。
    • SYS用户用于初始创建数据库实例。
    • PUBLIC用户预定义的,如果授予一个权限给用户“PUBLIC”,那么就意味着将该权限授予了该数据库的所有用户。例如:把一个对象t1给所有用户有select权限grant select on user1.t1 to public;那么所有的PUBLIC用户都可以访问该表t1;再比如说grant dba to public;那么所有的用户都有dba权限了。

语法格式

CREATE USER user_name IDENTIFIED BY password [ DEFAULT TABLESPACE tablespace_name | PASSWORD EXPIRE | ACCOUNT { LOCK | UNLOCK } | PROFILE profile_name | ENCRYPTED ] [ ... ]

参数说明

  • user_name

    用户名。

    • 用户名不允许包含以下特殊字符:分号(;)、竖线(|)、反引号(`)、美元符($)、位运算( &)、大于号(>)、小于号(<)、双引号(")、单引号(')、感叹号(!)、空格和版权符号(©),即使用双引号或者反引号括起来也不行。
    • 若用户名包含以上禁止特殊字符以外的其他特殊字符时,必须用双引号("")或者反引号(``)括起来。
    • 由于SYSDBA、CLSMGR为数据库关键字,这些名称的用户会登录不上数据库,建议用户不要创建该名称的用户。
  • IDENTIFIED BY

    创建用户时,给用户指定密码。

  • password

    用户密码。

    设置用户密码时,需要遵循如下规范:

    • 密码长度必须大于等于8个字符,小于等于64个字符。
    • 若密码不以单引号括起来,则密码首字符必须是字母、#号或下划线。
    • 密码不能与用户名或者用户名的倒序相同(校验时,不区分大小写)。
    • 密码只能包含以下4种类型,并且至少选取其中3种类型的组合。
      • 数字。
      • 小写字母。
      • 大写字母。
      • 空格或特殊字符(GaussDB 100支持的特殊字符列表,请参见下方的“特殊字符”表)。
    • 创建密码时,若密码中包含_#$以外的特殊字符或者空格,则密码须用单引号括起来。
    • 若创建的密码中包含特殊字符$,通过zsql连接数据库时密码在单引号里面$不需要使用\转义字符转义,密码不在单引号里面$需要使用\转义字符转义,否则会登录失败。
    • 若创建的密码中包含特殊字符空格,只能通过交互式登录。
    • 使用conn命令登录数据库密码段都认为是密码字符。
    • 使用zsql命令登录数据库密码字段使用单引号括起来。密码中不能出现单引号。
  • DEFAULT TABLESPACE tablespace_name

    定义用户私有默认表空间。

    表空间必须存在。

  • PASSWORD EXPIRE

    手动密码过期,过期后该用户登入提示“the password has expired”,禁止登入。

  • ACCOUNT { LOCK | UNLOCK }

    手动锁定用户,锁定后该用户登入提示“the account is locked”,禁止登入。

  • profile_name

    档案名。

    用户引用一个profile,profile必须提前配置。当创建用户时没有明确指定PROFILE,默认引用default PROFILE。

  • ENCRYPTED

    用于标识指定的密码是加密的密文,当指定为密文时不校验密码规范。

    使用ENCRYPTED方式创建的用户需要用明文密码登录,不推荐采用此方式创建用户。

表1 特殊字符

编号

字符

编号

字符

编号

字符

编号

字符

1

`

9

&

17

\

25

"

2

~

10

*

18

|

26

,

3

!

11

(

19

[

27

<

4

@

12

)

20

{

28

.

5

#

13

-

21

}

29

>

6

$

14

_

22

]

30

/

7

%

15

=

23

:

31

?

8

^

16

+

24

'

-

-

示例

创建用户jessica,设置手动密码过期后给用户返回登入提示。
CREATE USER jessica IDENTIFIED BY database_123 PASSWORD EXPIRE;
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论