背景:今天启动node服务时直接报错,顿时一激灵,之前(几个月前哈哈)明明好好的。主要问题就是在连接数据库上,我登上mysql瞅瞅有没有问题,当要输入密码时,emmm, 很好, 忘记root密码了,于是google上一顿操作猛如虎:
一、首先重置root密码:
-
win + R 输入cmd,按住Ctrl + Shift 点击确定以管理员身份运行命令行,然后进入MySQL安装目录下的bin目录中:
-
命令行运行
mysqld --install,注册mysql服务
![image]()
-
接着命令行输入
mysqld --initialize --user=root --console,初始化mysql,这时会返回mysql的初始化密码,请记住它。
![image]()
-
接着继续在命令行输入
net start mysql启动msyql,你会看到MySQL 服务已经启动成功的提示 -
命令行里再次输入
mysql -u root -p登录mysql输入密码,密码是上面初第三步始化的密码
![image]()
-
接下来修改你的密码,在登录mysql后的命令行中输入
set password for root@localhost = password('你要设置的密码');,这里我要设置的的123456
![image]()
哈哈如果你也和我一样修改不成功,再使用这个命令ALTER USER 'root'@'localhost' IDENTIFIED BY '123456';
![image]()
出现这个提示就成功了嘿嘿🤭
二、mysql可以成功登录,这时我以为node服务肯定乖乖成功启动,但是。。。

又报错Client does not support authentication protocol requested by server; consider upgrading MySQL client,rnm退钱😭
欸嘿这次找到了大佬的解决方法,启动mysql后的命令行里依次输入如下指令:
USE mysql;ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '123456';这里我的密码是123456FLUSH PRIVILEGES;
![image]()
三、这次总该没问题了吧,启动node服务,很好,成功的失败了

我瞅了眼连接mysql部分的代码,怎么test_db没了?
登录上mysql,输入show databases;,确实没了test_db

那再创建一个吧,命令行输入create database test_db;,输入show databases;查询验证一下

最后再再启动node服务,终于成功了🤭嘿嘿








浙公网安备 33010602011771号