• linux中mysql忘记root密码如何登陆


     

     
    首先确保服务器处于安全模式,因为修改密码期间数据库处于没有密码保护的状态。
    进行如下操作:
     
    1、关闭mysql服务 sc stop mysql
     
    2、以安全模式启动mysql
    mysqld -- skip-grant-tables
    建议通过修改配置文件实现安全启动:
    vi /etc/my.cnf
    在[mysqld]段中加上一句: skip-grant-tables
    保存并退出
     
    3、重新启动mysqld
    service mysqld restart
     
    4、登陆mysql
    直接输入mysql -u root -p 回车, (忽略密码)再回车;
     
    5、更改root密码
    UPDATE mysql.user SET Password=PASSWORD('xxx') where USER='root';
    更改密码时出现错误:
    ERROR 1054 (42S22): Unknown column 'Password' in 'field list'
    原因:数据库下没有Password字段
    解决办法
    查找数据库mysql的user表
          show databases;
          use mysql;
          show tables;
          select * from user;   
    发现没有Password字段,Password字段改成了authentication_string
    使用该字段重新修改root密码即可:
    update mysql.user set authentication_string=password('xxx') where user='root' ;
    注意: mysql新版本用于存用户密码的字段名为authentication_string而不是 password,且新密码必须使用password函数进行加密
     
    6、修改完密码以后再打开配置文件,将skip-grant-tables注释掉。
    vi /etc/my.cnf
    #skip-grant-tables
     
    7、重新运行mysql,即可使用新密码进行登陆。
    service mysqld restart
  • 相关阅读:
    Docker 安装NGINX
    Ant 使用setFieldsValue更新Form表单值
    SpringSecurity设置角色和权限
    java 获取昨天、今天、明天的时间
    Ubuntu 20.04 root ssh登录配置
    http: server gave HTTP response to HTTPS client解决方案:
    06-多线程笔记-2-锁-3-Lock
    05-多线程笔记-2-锁-2-Synchronized
    04-多线程笔记-2-锁-1-死锁
    volatile
  • 原文地址:https://www.cnblogs.com/tianzhendengni/p/15174514.html
Copyright © 2020-2023  润新知