MySQL 用户管理之修改用户、锁定用户

修改用户

修改用户需要有全局的创建用户权限、或系统 mysql 数据库的更新权限。

# 修改当前登录的用户的密码
ALTER USER USER() IDENTIFIED BY 'auth_string';

# 修改指定用户的密码
ALTER USER 'jeffrey'@'localhost' IDENTIFIED BY 'password';

# 修改当前用户的密码并对现有密码进行验证,验证失败不会修改
ALTER USER 'jeffrey'@'localhost' IDENTIFIED BY 'password' REPLACE 'current_password';

# 修改指定用户的属性
ALTER USER 'bill'@'localhost' ATTRIBUTE '{"baz": "faz", "foo": "moo"}';

# 删除指定用户的某个属性
ALTER USER 'bill'@'localhost' ATTRIBUTE '{"foo": null}';

# 修改指定用户的 comment 属性
ALTER USER 'bill'@'localhost' COMMENT 'Something about Bill';

# 修改指定用户的 comment 属性为空字符串
ALTER USER 'bill'@'localhost' COMMENT '';

# 删除指定用户的 comment 属性
ALTER USER 'bill'@'localhost' ATTRIBUTE '{"comment": null}';

# 将用户的密码标记为过期,下次登录必须修改
ALTER USER 'jeffrey'@'localhost' IDENTIFIED BY 'new_password' PASSWORD EXPIRE;

# 修改用户的角色,角色不需要存在
ALTER USER 'joe'@'10.0.0.1' DEFAULT ROLE administrator, developer;

# 修改指定用户的密码
SET PASSWORD FOR 'jeffrey'@'localhost' = 'auth_string';

# 修改当前登录用户的密码,不需要任何权限
SET PASSWORD = 'auth_string';

锁定用户

帐户锁定状态记录在系统表 mysql.useraccount_locked 列中。

ALTER USER 'jeffrey'@'localhost' ACCOUNT LOCK;
ALTER USER 'jeffrey'@'localhost' ACCOUNT UNLOCK;

# 查看用户的锁定信息
SHOW CREATE USER user

使用锁定的用户登录,会提示以下内容:

Access denied for user 'user_name'@'host_name'.
Account is locked.

你可能感兴趣的:(mysql)