【完美解决】mysql启动不了:本地计算机上的MySQL服务启动后停止

本文基于mysql8.0,5.7也可以参考

navicat 突然莫名其妙连不上mysql
【完美解决】mysql启动不了:本地计算机上的MySQL服务启动后停止_第1张图片

查看服务,也启动不了,手动启动出现错误:

本地计算机上的MySQL服务启动后停止。某些服务在未由其他服务或程序使用时将自动停止

【完美解决】mysql启动不了:本地计算机上的MySQL服务启动后停止_第2张图片

20230525更新!

先检查你的mysql注册表信息,是不是改了!!!
先检查你的mysql注册表信息,是不是改了!!!
先检查你的mysql注册表信息,是不是改了!!!
会省一些事

win+R 输入regedit
进入注册表地址,找到右边的imagePath

计算机\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\MySQL80

【完美解决】mysql启动不了:本地计算机上的MySQL服务启动后停止_第3张图片

我是因为安了两个版本的mysql,因为前段时间用分区助手修改程序位置,顺便移动了mysql位置,结果不能运行,恢复回原来的位置也连不上mysql
所以这里能看到安装地址和服务名字对不上
所以连不上
如果改了还是不行,才进行下面的步骤


下面是解决问题的详细步骤

第一步,备份data数据

进入MySQL的安装目录,拷贝一份data文件,里面是你的库表还有其他很多信息,比如账号密码
然后把data文件夹清空
【完美解决】mysql启动不了:本地计算机上的MySQL服务启动后停止_第4张图片

第二步. mysqld --initialize

在bin目录下,命令行中输入 mysqld --initialize
等一会
【完美解决】mysql启动不了:本地计算机上的MySQL服务启动后停止_第5张图片

这时候刚刚清空的data里面的东西又回来了
【完美解决】mysql启动不了:本地计算机上的MySQL服务启动后停止_第6张图片

第三步.尝试运行net start mysql

【完美解决】mysql启动不了:本地计算机上的MySQL服务启动后停止_第7张图片

想起来我的服务名字不叫mysql 而是mysql80
【完美解决】mysql启动不了:本地计算机上的MySQL服务启动后停止_第8张图片

eeeeeeeee………换黑窗口试试
【完美解决】mysql启动不了:本地计算机上的MySQL服务启动后停止_第9张图片

呃呃呃呃……哦对了
权限不够,换成管理员权限再试试
【完美解决】mysql启动不了:本地计算机上的MySQL服务启动后停止_第10张图片

进到bin目录,
先还是运行net start MySQL80
这里会有两种情况

第一种情况

假如启动成功,就没有后面的事情了
只需要停掉服务后,先清空data,再把data副本拷进去就能用mysql了


另一种情况

管理员运行net start mysql80还是不行,
就重新装一下mysqld
mysqld --install MySQL80 --defaults-file="E:\software\MySQL\data\my.ini" ,后面的mysql80是你的服务名(我就是一开始没加,后来还通过修改服务名麻烦了一下)
然后最好指定一下对应的MySQL版本的my.ini文件,我这里是8.0

接下来,看到 Service successfully installed.就说明可以了

【完美解决】mysql启动不了:本地计算机上的MySQL服务启动后停止_第11张图片

注意要先把原来的库表,也就是刚备份的的data数据拷贝回去后再启动,如果都启动了就停了net stop mysql,再拷贝

然后连接数据库就可以了
【完美解决】mysql启动不了:本地计算机上的MySQL服务启动后停止_第12张图片

你可能感兴趣的:(mysql,数据库,运维)