文章目录
- 1.删除mysql服务
- 2.新建my.ini配置文件
- 3.重新生成data文件
- 4.重新安装mysql服务,同时绑定my.ini配置文件
- 5.重新设置密码
- 6.修改root用户密码
1.删除mysql服务
- 以管理员身份运行cmd,进入安装目录下的mysql的bin文件下,运行命令:
sc delete MySQL80
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-SolQ4cEZ-1670240465539)(https://xingqiu-tuchuang-1256524210.cos.ap-shanghai.myqcloud.com/13743/image-20221205182043198.png)]
- MySql必须和你的服务名称一致,可以在我的电脑-属性-服务中查看(我的是已经修改过后的,所以不一样)。删除mysql服务之后,在服务中就看不到了,如果还能看见,可以手动右击选择“停止”,服务就消失了。
2.新建my.ini配置文件
- 在mysql目录下,原来是没有my.ini这个配置文件的,其实,新版的mysql的my.ini配置文件已经迁移到默认C盘下的ProgramData中,这时我们可以选择把它复制到mysql根目录下,但要注意修改my.ini文件中的basedir 和 datadir改成自己正确的路径。
这里我自己的my.ini在D盘下
文件目录
D:\ProgramData\MySQL\MySQL Server 8.0
一定要修改datadir,修改自己的my.ini路径
datadir=D:/ProgramData/MySQL/MySQL Server 8.0\Data
3.重新生成data文件
删除mysql下的data文件,如果有重要的数据表先备份好。在cmd中重新生成data文件,在data中输入:
mysqld --initialize-insecure --user=mysql
命令执行完毕会在自己安装mysql的文件夹中生成新的data文件。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3Mul4vve-1670240465541)(https://xingqiu-tuchuang-1256524210.cos.ap-shanghai.myqcloud.com/13743/image-20221205183254695.png)]
在自己安装mysql的文件夹中生成新的data文件
此步骤可以跳过这里我将data文件夹移至自己的ProgramData中去
4.重新安装mysql服务,同时绑定my.ini配置文件
- 在cmd中执行命令:
mysqld --install "MySQL80" --defaults-file="D:\ProgramData\MySQL\MySQL Server 8.0\my.ini"
-
“MySQL80”是服务名称,可以自己修改;”…\my.ini“是新建的配置文件的位置。
-
此时在服务中可以看到MySQL80服务,如果提示安装成功,这时打开电脑的”服务“窗口,可以找到新添加的MySql80服务:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ArCqIjYt-1670240465543)(https://xingqiu-tuchuang-1256524210.cos.ap-shanghai.myqcloud.com/13743/image-20221205184956664.png)]
启动mysql:在cmd中输入命令:D:\developer_tools\MySQL\MySQL Server 8.0>net start mysql80
,如果启动成功,如下:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ZTppwJlc-1670240465543)(https://xingqiu-tuchuang-1256524210.cos.ap-shanghai.myqcloud.com/13743/image-20221205184931503.png)]
如果不成功:
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-3AQtIX5T-1670240465543)(https://xingqiu-tuchuang-1256524210.cos.ap-shanghai.myqcloud.com/13743/image-20221205185455570.png)]
这时可能是my.ini配置文件中的某些配置有问题。你可以修改ini文件内容,然后从头按步骤再试一遍。
5.重新设置密码
删除了data文件和服务之后,之前的密码就失效了,所以需要重新设置密码。在cmd中输入如下命令:D:\developer_tools\MySQL\MySQL Server 8.0> mysql -uroot -p
这时密码为空,不用输入密码直接回车。
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-xyzHZlpz-1670240465544)(https://xingqiu-tuchuang-1256524210.cos.ap-shanghai.myqcloud.com/13743/image-20221205185253990.png)]
6.修改root用户密码
- 在mysql8.0之前的版本,修改root密码的命令是:
update mysql.user set authentication_string=password("你的密码") where user="root";
- mysql8.0之后的版本,修改root密码的命令是:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的密码';
- 退出mysql,用刚刚修改的密码重新登录,分别运行命令:
mysql> exit
;mysql -u root -p
如图:
- 现在已经成功绑定my.ini文件
再次登录Navicat,成功
[外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传(img-ibflDUp1-1670240465544)(https://xingqiu-tuchuang-1256524210.cos.ap-shanghai.myqcloud.com/13743/image-20221205190122613.png)]