Skip to content

Locked_connects

xiaoboluo768 edited this page Jun 14, 2020 · 2 revisions
  • 从版本5.7.6开始,MySQL支持使用ACCOUNT LOCK和ACCOUNT UNLOCK子句在执行CREATE USER和ALTER USER语句时指定是否要锁定和解锁用户帐户,如下:
    • 与CREATE USER一起使用时,ACCOUNT LOCK和ACCOUNT UNLOCK子句指定新帐户的初始锁定状态。如果不指定,则新建的账号默认为未锁定状态
    • 与ALTER USER一起使用时,ACCOUNT LOCK和ACCOUNT UNLOCK子句指定已存在帐户的新锁定状态。如果不指定,则已存在帐户的锁定状态保持不变
    • 帐户的锁定状态记录在mysql.user表的account_locked列中。 使用SHOW CREATE USER语句可以查看到帐户的锁定状态
    • 如果客户端使用处于锁定状态的账号尝试连接到Server时,则会提示ER_ACCOUNT_HAS_BEEN_LOCKED错误,并将错误写入错误日志。同时Server递增Locked_connects状态变量值,表示客户端使用锁定账号尝试连接的次数
    • Server中存储过程或存储函数内部调用,或者使用代理用户进行连接的,则这些请求访问不受用户的锁定状态的影响,要注意:如果要从旧版本升级到MySQL 5.7.6及更高版本,请运行mysql_upgrade以确保mysql.user表的account_locked列存在。否则对于没有account_locked列的账号,Server会视为已解锁状态,且在使用ACCOUNT LOCK或ACCOUNT UNLOCK子句会产生错误

上一篇:Com_show_profile | 下一篇:Ssl_verify_mode

Clone this wiki locally