Windows系统Mysql8.0+重置root密码
Linux忘记密码修改: https://blog.csdn.net/m0_45057216/article/details/124767650
- Windows系统Mysql8.0+重置root密码
- 遇到了一个
select *from table;
的语法错误。
在Windows版本下,Mysql版本8.0+,重置root密码。
用管理员命令打开控制台,将命令中的目录路径改成你本机Mysql的bin目录。
关闭Mysql服务 :
net stop mysql
跳过权限检查:
mysqld --skip-grant-tables --shared-memory;
打开新命令行,原来的命令行不要关闭;
重新进入mysql,这次不需要输入密码,直接回车即可。
进入mysql命令行后,输入以下语句:
mysql -uroot -p//回车
use mysql;
UPDATE mysql.user SET authentication_string=null WHERE User='root';
FLUSH PRIVILEGES;
ALTER USER 'root'@'localhost' IDENTIFIED WITH caching_sha2_password BY '你的密码';
FLUSH PRIVILEGES;
exit;
重新启动Mysql服务。将以上两个命令行窗口关闭,正常登录进入mysql即可。
//输入启动Mysql服务命令:
net start mysql
登录Mysql。启动服务成功后,就可以尝试用新密码登录了,
输入命令:
mysql -u root -p
遇到了一个select *from table;
的语法错误。
见下图,同样的查询语句,查询system
表时就报运语法错误,原来是在SQL 语句中使用了mysql 的保留字system
命名了表名,当使用mysql保留字的时候,不能用单引号,要用反引号将其引起来,也就是键盘第二排的第一个(数字1的左边那个键)。
当换成反引号执行就可以执行成功。
mysql> select * from system;
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near 'system' at line 1
问题解决见下链接:
https://blog.csdn.net/liuzhuang2017/article/details/81181521