ALTER USER
更改用户属性的语法介绍。
语法
alter_user_statement ::= ALTER USER [IF EXISTS] user_name SET PASSWORD '=' password_definition [ WHERE OLDPASSWORD '=' password_definition];
参数说明
参数 | 说明 |
---|---|
user_name | 用户名。可以是SQL常量或标识符。 |
password_definition | 用户密码。必须是VARCHAR类型的SQL常量。 |
注意
若尝试修改的是一个不存在的用户名,在未指定IF EXISTS时,则会报错提示用户不存在;若此时指定了IF EXISTS,则并不会报错而是中止变更过程。
如果当前修改的用户名就是当前连接登录的用户,则需要指定
WHERE OLDPASSWORD = password_definition
子句进行当前的密码校验。ALTER USER语句当前只支持修改密码,不支持修改用户名。若希望更改用户名,则需要先使用DROP USER语句删除用户,然后使用CREATE USER语句重新创建用户。
示例
以下示例展示了以一个拥有全局ADMIN权限的用户连接后,尝试将用户tsdbuser
的密码修改为 newpassword
。
ALTER USER IF EXISTS `tsdbuser` SET PASSWORD = 'newpassword';
以下示例则展示了以用户tsdbuser
连接后试图变更自己密码为 newpassword
。
ALTER USER `tsdbuser` SET PASSWORD = 'newpassword' WHERE OLDPASSWORD = 'asdf1234';