我正在参与掘金创作者训练营第6期, 点击了解活动详情
九月底要完成一个学校的竞赛,摆了一个假期的我们开始准备起来了。决定用以前的 jsp 模板去改改交上去,于是出了一系列的问题。令人窒息。。。
问题是我的 mysql 在一学期 PHP 的学习中无法使用了,在 navicat 无法运行数据库。上 PHP 的时候用的是 wamp 里自带的 mysql5 ,不过当时没找到这个,只是在D盘里找到了一个 mysql8 的文件夹,就以为自己在用的是 mysql8 。模板是在 idea 里运行的 jsp 模板,有一系列的问题,下面来讲讲。
首先先了解一下navicat最常见的报错,有下面两个。
1. 报错1045
原因:密码错误
解决方法:
1. 知道(可能的)密码
mysql -u root -p
enter后 试密码
我试出来 我的 mysql5 的密码为123456,
没试出来 mysql8 的密码(后来才发现我根本没安装 mysql8 ,也有可能是被我卸载过,只剩一个装着安装包的文件夹,看到问的兄弟们也可以关注一下有没有找对版本)
2. 不知道密码
改密码
改密码由于mysql版本的不同。有所不同。
不知道版本的,命令行先关闭mysql服务net stop mysql再net start mysql ,看提示的是哪个版本的mysql,不要像我一样苦苦挣扎在没安装的版本上。
1. mysql8以下,如mysql5
1.1 关闭mysql服务,可以搜索服务然后将其关闭
1.2 打开CMD命令行窗口,转到mysql\bin目录,应该需要管理员权限
windows+x 打开windows power shell 管理员模式
1.3 转到正确的mysql\bin目录
1.4 输入mysqld --skip-grant-tables 回车
该指令能够启动MySQL服务的时候跳过权限表认证,就是无密码启动
1.5 重新打开一个命令行窗口,因为刚才那个不能动了,切换到mysql\bin目录mysql回车,如果启动成功,会有welcomde to the mysql 等好几行提示
1.6 连接权限数据库表 user
use mysql
1.7 改密码
update user set password=password("想要改成的密码") where user="root";
1.8 刷新权限
flush privileges;
这样就改好密码了
2. mysql8
与上述相似,就是无密码启动服务的命令有所改变,变为mysqld –console –skip-grant-tables –shared-memory
可能会无响应
解决方法:
mysqld --defaults-file="mysql文件路径\my.ini" --console --skip-grant-tables --shared-memory
2. 报错2003
原因:密码错误
解决方法:请听下回分解(真的不是为了再水一篇)