zoukankan      html  css  js  c++  java
  • MySQL5.7.26 忘记Root密码小计

    以前直接修改mysql.user就ok了,现在不行了,正好虚拟机MySQL的root密码忘记了,就简单记录下:(本方法不适合互联网线上项目,除非你不在意这段时间的损失)

    PS:以UbuntuServer为例(CentOS你把配置文件的位置换下就ok了)

    坑点:

    1. 不能和以前一样直接修改user表了,需要使用新命令
      • alter user 'root'@'localhost' identified with mysql_native_password by '复合密码强度的新密码';
    2. ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
      • flush privileges;

    修改密码

    附录

    dnt@ubuntuserver:~$ vi /etc/mysql/mysql.conf.d/mysqld.cnf 
    dnt@ubuntuserver:~$ cat /etc/mysql/mysql.conf.d/mysqld.cnf |grep skip
    skip-external-locking
    # Instead of skip-networking the default is now to listen only on
    skip_name_resolve=on
    skip-grant-tables
    dnt@ubuntuserver:~$ sudo systemctl restart mysql
    dnt@ubuntuserver:~$ mysql -uroot
    Welcome to the MySQL monitor.  Commands end with ; or g.
    Your MySQL connection id is 2
    Server version: 5.7.26-0ubuntu0.18.04.1 (Ubuntu)
    
    Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
    
    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.
    
    Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
    
    mysql> select user();
    +--------+
    | user() |
    +--------+
    | root@  |
    +--------+
    1 row in set (0.01 sec)
    
    mysql> alter user 'root'@'localhost' identified with mysql_native_password by 'WWW.baidu.com1';
    ERROR 1290 (HY000): The MySQL server is running with the --skip-grant-tables option so it cannot execute this statement
    mysql> flush privileges;
    Query OK, 0 rows affected (0.01 sec)
    
    mysql> alter user 'root'@'localhost' identified with mysql_native_password by 'WWW.baidu.com1';
    Query OK, 0 rows affected (0.00 sec)
    
    mysql> flush privileges;
    Query OK, 0 rows affected (0.01 sec)
    
    mysql> exit
    Bye
    
    

    恢复正常

    附录

    dnt@ubuntuserver:~$ sudo vi /etc/mysql/mysql.conf.d/mysqld.cnf 
    dnt@ubuntuserver:~$ cat /etc/mysql/mysql.conf.d/mysqld.cnf |grep skip
    skip-external-locking
    # Instead of skip-networking the default is now to listen only on
    skip_name_resolve=on
    # skip-grant-tables
    dnt@ubuntuserver:~$ sudo systemctl restart mysql
    dnt@ubuntuserver:~$ mysql -uroot -p
    Enter password: 
    Welcome to the MySQL monitor.  Commands end with ; or g.
    Your MySQL connection id is 2
    Server version: 5.7.26-0ubuntu0.18.04.1 (Ubuntu)
    
    Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.
    
    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.
    
    Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.
    
    mysql> select user();
    +----------------+
    | user()         |
    +----------------+
    | root@localhost |
    +----------------+
    1 row in set (0.00 sec)
    
    
    
  • 相关阅读:
    python_函数_文件
    Day_2_Python_str_list_dict的使用
    Day_1_Python_循环和格式化
    influxdb2.0版本部署+自启
    格式化Java内存工具JOL输出
    卷心菜的屯币日记
    influxDB时序数据库2.0FLUX查询语法使用记录
    两种转换2021-01-01T00:00:00Z为2021-01-01 00:00:00时间格式的方式(UTC时间转为yyyy-MM-dd HH:mm:ss)
    ThreadLocal的用处
    CentOS7使用ISO镜像文件作为离线Yum源
  • 原文地址:https://www.cnblogs.com/dotnetcrazy/p/11027732.html
Copyright © 2011-2022 走看看