zoukankan      html  css  js  c++  java
  • 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
     
     
  • 相关阅读:
    元素查找
    合并果子 2004年NOIP全国联赛普及组
    队列练习1,2,3
    山峰
    栈练习1,2,3
    天使之城
    括号序列
    布尔表达式
    逆波兰表达式
    旅行家的预算 1999年NOIP全国联赛普及组NOIP全国联赛提高组
  • 原文地址:https://www.cnblogs.com/hupoykitty/p/11608481.html
Copyright © 2011-2022 走看看