mysql启动不了 显示会自动停止

img


img

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

该问题有几种可能性:
第一种情况:
端口号被占用
可以打开MySQLServer8.0\data下面的后缀名为.err的文件,查看错误信息
发现3306端口被占用

D:MySQL Server 8.0\bin>net start mysql80

查看占用3306端口号的进程,并停止占用端口的进程

C:\WINDOWS\system32>netstat -ano|findstr 3306
TCP 0.0.0.0:3306 0.0.0.0:0 LISTENING 18520
TCP 0.0.0.0:33060 0.0.0.0:0 LISTENING 18520
TCP [::]:3306 [::]:0 LISTENING 18520
TCP [::]:33060 [::]:0 LISTENING 18520

C:\WINDOWS\system32>taskkill /f /pid 18520
成功: 已终止 PID 为 18520 的进程。

以管理员身份运行cmd,然后进入mysql的bin目录里,输入net start mysql80:
第二种情况:
在"D:\MySQL Server 8.0\Data"目录下的.err的错误日志文件中,显示如下:
Can’t start server: Bind on TCP/IP port: An attempt was made to access a socket in a way forbidden by its access permissions.

百度以后知道设置服务中的"Internet Connection Sharing"为禁用,确定重启,终于可以了。问题解决;

第三种情况:
运行以下命令初始化数据库:

mysqld --defaults-file=D:\mysql8.0.11\my.ini --initialize --console
发现Data文件夹中中没有数据;
打开My.ini文件,发现路径错误导致无法加载。
希望有帮助。

是不是mysql还没有初始化,运行mysqld --initialize 命令初始化一下试试