描述

该语句用于创建新的 OceanBase 用户。创建新用户后,可以使用该用户连接 OceanBase。

说明

必须拥有全局的CREATE USER权限,才可以使用CREATE USER命令。

格式

  1. create_user_stmt:
  2. CREATE USER [IF NOT EXISTS] user_name [IDENTIFIED BY 'password'];
  3. alter_user_stmt:
  4. ALTER USER user_name ACCOUNT {LOCK | UNLOCK};
  5. | ALTER USER user_name IDENTIFIED BY 'password';
  6. | SET PASSWORD [FOR user_name] = PASSWORD('password');
  7. | RENAME USER rename_user_action_list;
  8. drop_user_stmt:
  9. DROP USER user_name_list;
  10. rename_user_action_list:
  11. rename_user_action [, rename_user_action ...]
  12. rename_user_action:
  13. user_name TO user_name
  14. user_name_list:
  15. user_name [, user_name ...]
  16. password:
  17. STR_VALUE
  18. CREATE USER [IF NOT EXISTS] user_specification_list;
  19. user_specification_list:
  20. user_specification [, user_specification ...]
  21. user_specification:
  22. user IDENTIFIED BY authstring
  23. | user IDENTIFIED BY PASSWORD hashstring

参数解释

参数

描述

user_name

用户名,新建用户后,“mysql.user”表会新增一行该用户的表项。如果同名用户已经存在,则报错。

IDENTIFIED BY

使用自选的 IDENTIFIED BY 子句,可以为账户给定一个密码。

user_name [, user_name …]

同时创建多个用户时,用“,”隔开。

user IDENTIFIED BY ‘authstring’

此处密码为明文,存入“mysql.user”表后,服务器端会变为密文存储下来。

user IDENTIFIED BY PASSWORD ‘hashstring’

此处密码为密文。

示例

  1. 执行以下命令创建名为 sqluser01 和 sqluser02 的用户,密码均为 123456。
  1. CREATE USER 'sqluser01' IDENTIFIED BY '123456', 'sqluser02' IDENTIFIED BY '123456';
  1. 执行以下命令查看创建的用户。
  1. SELECT user FROM mysql.user;

执行结果如下所示。

  1. mysql> CREATE USER 'sqluser01' IDENTIFIED BY '123456', 'sqluser02' IDENTIFIED BY '123456';
  2. Query OK, 0 rows affected (0.12 sec)
  3. mysql> select user from mysql.user;
  4. +-----------+
  5. | user |
  6. +-----------+
  7. | root |
  8. | admin |
  9. | sqluser01 |
  10. | sqluser02 |
  11. +-----------+
  12. 4 rows in set (0.00 sec)