• 【mysql】You must reset your password using ALTER USER statement before executing this statement. 报错处理


    1.问题:登陆mysql以后,不管运行任何命令,总是提示这个

    mysql> select user,authentication from mysql.user;
    ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
    mysql> show databases;
    ERROR 1820 (HY000): You must reset your password using ALTER USER statement before executing this statement.
    

    2.解决办法

    解决方式如下:
    
    (1)MySQL版本5.7.6版本(以前)用户可以使用如下命令:
            mysql> SET PASSWORD = PASSWORD('l!vWT#mL93');
     
    (2)MySQL版本5.7.6版本(开始后)的用户可以使用如下命令:
            mysql> ALTER USER USER() IDENTIFIED BY 'l!vWT#mL93';
         

    3.原因分析

    (1)MySQL版本5.6.6版本起,添加了password_expired功能,它允许设置用户的过期时间。这个特性已经添加到mysql.user数据表,但是它的默认值是”N”,可以使用ALTER USER语句来修改这个值。
      输入以下命令,将账号密码强制到期:
      mysql> ALTER USER 'root'@'localhost' PASSWORD EXPIRE;
      此时,用户可以登录到MYSQL服务器,但是在用户为设置新密码之前,不能运行任何命令,就会得到上图的报错,修改密码即可正常运行账户权限内的所有命令。由于此版本密码过期天数无法通过命令来实现,所以DBA可以通过cron定时器任务来设置MySQL用户的密码过期时间。
    
    (2)MySQL 5.7.4版开始,用户的密码过期时间这个特性得以改进,可以通过一个全局变量default_password_lifetime来设置密码过期的策略,此全局变量可以设置一个全局的自动密码过期策略。可以在MySQL的my.cnf配置文件中设置一个默认值。
      (a)这会使得所有MySQL用户的密码过期时间都为120天,MySQL会从启动时开始计算时间。
        my.cnf配置如下:     [mysqld]     default_password_lifetime
    =120   (b)如果要设置密码永不过期,my.cnf配置如下:
        my.cnf配置如下:     [mysqld]     default_password_lifetime
    =0
    (3)如果要为每个具体的用户账户设置单独的特定值,可以使用以下命令完成(注意:此命令会覆盖全局策略),单位是“天”,命令如下:   ALTER USER ‘root’@‘localhost
    ' PASSWORD EXPIRE INTERVAL 250 DAY;

    (4)如果让用户恢复默认策略,命令如下:   ALTER USER 'root'@'localhost' PASSWORD EXPIRE DEFAULT;
    (5)个别使用者为了后期麻烦,会将密码过期功能禁用,命令如下:   ALTER USER
    'testuser'@'localhost' PASSWORD EXPIRE NEVER;
  • 相关阅读:
    对PostgreSQL的 seq scan , bitmap index scan 和 index scan 的进一步理解
    C# IEnumerable和IEnumerator的区别,如何实现
    老板运煤问题及解决方案
    快速排序和简单排序
    给定数组,查找最小的k个元素或最大的k个元素
    一列数字的规则如下;1,1,2,3,5,8,13,21,34........ 求第30位数字是多少,用递规和非递归两种方法算法实现
    C# 如何利用反射来加载程序集,并调用程序集中有关类的方法
    http 请求 header 应用分析
    templatemonster 10231 面朝大海 你听到什么?
    足球俱乐部 网站模板 附带源文件 字体
  • 原文地址:https://www.cnblogs.com/faithH/p/11821114.html
Copyright © 2020-2023  润新知