mysql启动报错(最后不得不重装!)

发布时间 2023-09-21 09:45:48作者: hacker-dreamer

mysql启动报错,挣扎到最后重装mysql


是这样的:

当我打靶场时再次打开mysql数据库管理系统时,报错了,人麻了,如果找不回来了,那我之前所有靶场数据以及爬虫数据就都没了,都要重新手动初始化导入(气死了)!最后果然也没能找回来的哈哈。。。。。。


终端输入net start mysql8 (mysql8为服务器名字)

报错:

MySQL 服务正在启动.MySQL 服务无法启动.服务没有报告任何错误。请键入 NET HELPMSG 3534 以获得更多的帮助

接着是查问题:

1.3306端口是否占用
2.mysql配置文件(my.ini)是否损坏,或者mysql安装目录下的data文件被损坏或移除
3.MySQL服务的可执行文件路径不正确
4.别无办法,重装mysql服务


1.  3306端口是否占用

查看端口占用情况

所有端口 netstat -ano
指定端口 netstat -aon|findstr 3306
发现没有被占用

扩展:假设被占用杀死对应pid进程的步骤

1_.根据pid获取进程名
记住最后一列数字PID,此处为5340。_

2_.根据进程名用命令kill掉或者快捷键Ctrl+Alt+Delete,打开任务管理器,可查看PID对应的进程再关闭
命令 taskkill /f /t /im 进程名


2.mysql配置文件(my.ini)是否损坏,或者mysql安装目录下的data文件被损坏或移除

my.ini配置文件有问题->最关注其中两行basedir 和datadir,分别是mysql的安装路径和mysql数据的存储路径。这两个有问题则要改为到正确的路径(必须是存在的)。如果文件大损---->考虑重装mysql服务

注意-->初始会重载你的相关配置( 如mysql 客户端连接服务端时默认使用的端口,服务端的默认字符集,数据的存储路径等),所以初始前要备份data文件即你的mysql的数据文件(一些数据库,表的数据)

my.ini -->后面会讲重装mysql时,my.ini要怎么写

下面是初始化mysql操作:

初始化一下(mysqld --initialize),如果可能有报错,但是没反应可以到Data文件夹里的.err文件查看原因;
或者可以输入mysqld --initialize --console,在控制台就能看到报错信息


3.MySQL服务的可执行文件路径不正确

若路径中有-default内容需要删掉(这里可以先备份原来的路径,以防删改后无效)-->需在注册表中删改,这里无法直接改

如:

"F:\Program Files\mysql-8.0.30-winx64\bin\mysqld" -defaultPath="F:\Program Files\mysql-8.0.30-winx64\bin\mysqld" MySQL80

打开注册表: win+R输入regedit或直接搜注册表编辑器

修改Image Path为

"F:\Program Files\mysql-8.0.30-winx64\bin\mysqld" MySQL80(这里填你自己的服务器名,可以在服务配置中查到)

最后重新终端net start MYSQL80 (你的mysql服务器名)

我的还是不行,估计是之前清内存把一些mysql的重要配置文件删了(以后这个像mysql,vmware的虚拟机配置文件你们小心点别错删了。。。)

4.别无办法,重装mysql服务

重装前有个很重要的一步---->彻底删尽mysql服务

彻底删尽mysql服务

下面是具体steps:

注意:下面敏感操作一般要administrator权限,选择以管理员方式打开终端

1.先禁用掉mysql服务

way1 命令 net stop MYSQL80 (这里写你自己的mysql服务器名字)

way2 本地搜服务进入服务配置页面手动停止mysql服务

2.删除mysql服务

命令 sc delete mysql

3.删除相关注册表信息

开始菜单栏搜索 regedit 进入注册表编辑器(在cmd下输入此命令也是可以打开的)

路径1:\HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\services\eventlog\Application\MySQL

路径1:\HKEY_LOCAL_MACHINE\SYSTEM\ControlSet002\services\eventlog\Application\MySQL

删除整个MySQL文件夹即可

4.打开控制面板卸载mysql的所有程序,删掉mysql安装文件(可能在根目录中),若删不掉就用360等粉碎文件

我的mysq安装路径 F:\mysql_\mysql-5.7.28-winx64

重新安装mysql,官网下载或者网盘(官网有些慢)

网盘下载地址(windows版本mysql):

[]: https://pan.baidu.com/s/1Gn85bxyKe1okqtU0-xKuqQ?pwd=8888 "点击这里下载"

下面是对mysql进行初始化操作

1.进入mysql安装目录下的bin文件,cmd打开

mysqld --initialize --console

如果成功,会提示的最后显示初始密码,一定要记住它备份一个

提示“Service successfully installed.”,说明安装成功

2.再执行命令

mysqld install

3.然后启动服务(如果有安装MySQL Notifier,似乎会自动启动服务,就不用手动执行下面这条命令了)

net start mysql

4.进入mysql:mysql -u root -p你的密码

再mysql中重置密码(如把root用户密码设为123456)

alter user ‘root’@‘localhost’ identified by ‘123456’;

若报错那后面再运行第二个命令

flush privileges; 刷新权限