Mysql忘记密码:关于ERROR 1045 (28000): Access denied for user 'ODBC'@'localhost' (using password: NO)的问题

  命令行登陆mysql时,出现ERROR 1045 (28000): Access denied for user 'ODBC'@'localhost' (using password: NO)的提示。查了很多教程,经过折腾找到下述解决方案:php

  解决方法:mysql

    1. 停掉mysql服务sql

    2. 找到mysql安装目录下的my.ini,找到里面的[mysqld] 而后在下面加上skip_grant_tables(启动MySQL服务的时候跳过权限表认证)ui

    3. cmd -> net start mysql -> mysql回车  成功登陆后出现mysql提示符插件

    4. 输入use mysql (mysql的密码存在于mysql表中,所以打开该表)命令行

    5. 修改密码:update user set authentication_string = password("新设置的密码") where user="root";(我这里mysql的版本是5.7,其中密码列的属性叫作authentication_string;5.1的是password);若是不清楚属性能够用phpmyadmin等插件进入查看教程

    6. 刷新权限:flush privileges;ip

    7. 退出:quit;cmd

    8. 将my.ini中的skip_grant_tables去掉,恢复登陆时候的权限表认证string

    9. 重启mysql服务,再使用root和修改的密码登陆便可:mysql -u root -p 新设置的密码

相关文章
相关标签/搜索