1.要以管理员身份进入CMD
进入mysql.exe所在目录,输入
net stop mysql //确保mysql服务停止 不以管理员身份运行CMD会报错:访问错误
2.跳过授权
网上的古早教程输入 mysqld --skip -grant -tables在新版本已经不能使用,需输入命令行,执行后会无法进一步输入,重启一个新的CMD窗口即可。
mysqld --console --skip-grant-tables --shared-memory
3.启动进入数据库
之后需要重启mysql服务,然后直接免去身份验证进入数据库,
net start mysql
mysql -u root
4.修改密码
你可以show databases;show tables;看一下数据库和表,确保进入数据库成功
use user; //注意命令末尾一定要带分号 连接到user数据库
如果你按照网上教程输入set password for root@localhost = password(‘123’);会报有语法错误,因为新版本修改密码的语句改为:
alter user ‘root’@‘localhost’ identified by ‘123’; // ‘username’@'host’根据你的实际情况更改
如果报错说上述操作不能在-- skip -grant -tables下执行,需要:
flush privileges;
之后再执行更改密码的命令就可以操作成功了。