mysql无法启动服务及其他问题总结

 更新时间:2024年01月23日 15:00:16   作者:@山海  
MySQL无法启动,可能有多种原因导致,本文主要介绍了mysql无法启动服务及其他问题总结,具有一定的参考价值,感兴趣的可以了解一下

1.安装后关于配置的问题

显示【发生系统错误,拒绝访问】

  • mysql安装之后运行cmd执行【net start mysql】命令后报错:发生系统错误 5。拒绝访问。

在这里插入图片描述

原因:没有以管理员权限运行cmd.exe程序
解决方法:在电脑中找到命令提示符—>右键—>以管理员身份运行

  • 重新输入【net start mysql】

报错:【发生系统错误 2。系统找不到指定的文件。】
尝试解决:
【mysqld --remove】
【mysqld --install】

在这里插入图片描述

命令行Command Line Client闪退

  • 双击MySQL Command Line Client之后窗口一闪而退:
    解决
    1)查看程序默认执行文件是否存在
    2)还是由于MySQL服务没有启动的原因
  • MySQL Command Line Client后窗口输入密码后闪退:
    解决:以管理员身份进入cmd,输入命令【net start mysql】重新启动mysql,然后重新启动MySQL Command Line Client即可。

2.显示【MySQL服务无法启动】问题

在安装调试好后,隔一段时间没用,再打开命令提示符就显示这个【MySQL服务无法启动】。

在这里插入图片描述

由于命令行中启动会有反应速度的原因,启动不了先试试从任务管理器里启动mysql。

在这里插入图片描述

还是不行就试以下方法:

检查端口被占用

由于mysql默认端口为3306,所以需要检查这个端口号下是否有正在运行的进程。
方法一:cmd进入安装目录bin的路径下,输入命令 【netstat -ano】 ,找到3306接口的PID值。从下图可看到为【8964】

在这里插入图片描述

打开任务管理器—>详细信息,根据PID找到对应的mysql进程,右击关闭。

在这里插入图片描述

重新启动mysql,输入【net start mysql】

方法二
查看3306端口使用情况

  • 打开命令提示符中输入【netstat -aon|findstr “3306”】

在这里插入图片描述

注意:33060是mysql8.0+版本的扩展端口

  • 强制终止进程8964,输入【taskkill /F /pid 8964】,显示成功终止即可。

在这里插入图片描述

删除data文件并初始化

这是我觉得最经常尝试的方法。

如果不是初次安装,之前已经使用过,则需要先手动删除mysql安装目录下的data文件,我的安装路径是C:\Program Files\MySQL\MySQL Server 8.0\data
用管理员身份打开命令提示符——

注意:这里有三种方式

(1)执行【mysqld --initialize-insecure】(在安装目录中形成data文件夹,不显示或者说会初始化密码)

在这里插入图片描述

注意:之后进入的时候输密码时直接回车即可

在这里插入图片描述

(2)【mysqld --initialize】(初始化后会形成新密码,在data文件中以 .err 结尾的文件中)
**root@localhost:**后的字符串即是初始化后的密码

(3)【mysqld --initialize --console】(所有初始化信息会直接在控制台显示)

—> 之后重新启动mysql【net start mysql】
—> 启动成功之后 【mysql -u root -p】
—> 输入初始化后的密码,进入mysql
—> 修改密码,
【use mysql】
mysql>【ALTER USER ‘root’@‘localhost’ IDENTIFIED WITH mysql_native_password BY ‘你的新密码’;

注意:可能出现错误【ERROR 1064 (42000): You have an error in your SQL syntax; check the manual that corre】
解决方式:【flush privileges;】
【ALTER USER ‘root’@‘localhost’ IDENTIFIED BY ‘新密码’;】

在这里插入图片描述

这里还有一个小问题,初始化不成功,进入命令行后发现还是启动不成功,这时打开data文件下的以 .err 结尾的文件会发现显示错误日志

在这里插入图片描述

看到这行内容的时候会发现,其实还是端口的问题,具体见上面的解决办法。

配置my.ini/.conf文件

检查在安装路径下有没有配置文件,如果没有的话手建一个【my.ini】

在这里插入图片描述

进行相关属性配置:

[mysqld]
#设置北京时间
default-time_zone = '+8:00'
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=D:\MySQLDB\mysql-8.0.22-winx64(这里需要改成你的数据库所在目录)
# 设置mysql数据库的数据的存放目录
datadir=D:\MySQLDB\mysql-8.0.22-winx64\data(这里需要改成你的数据库中data所在目录)
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
# 服务端使用的字符集默认为UTF8
character_set_server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
default_authentication_plugin=mysql_native_password
# 解决无法写入空时间,解除严格限制模式
sql_mode=NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
 
[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8
[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8

重新安装MySQL

删除已有的mysql服务,再重新安装。

到此这篇关于mysql无法启动服务及其他问题总结的文章就介绍到这了,更多相关mysql无法启动服务内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • SQL- join多表关联问题

    SQL- join多表关联问题

    这篇文章主要介绍了SQL- join多表关联问题,具有很好的参考价值,希望对大家有所帮助。
    2022-12-12
  • mysql按逗号分割的实现

    mysql按逗号分割的实现

    在MySQL中,我们经常需要对数据进行拆分和处理,其中一个常见需求就是按逗号分割字符串,具有一定的参考价值,感兴趣的可以了解一下
    2023-11-11
  • MySQL安装出现The configuration for MySQL Server 8.0.28 has failed. You can...错误的解决办法

    MySQL安装出现The configuration for MySQL Server 8.0.28 has

    这篇文章主要给大家介绍了MySQL安装出现The configuration for MySQL Server 8.0.28 has failed. You can...错误的解决办法,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2023-09-09
  • MySQL如何实现事务的ACID

    MySQL如何实现事务的ACID

    这篇文章主要介绍了MySQL如何实现事务的四大特性,帮助大家更好的理解和学习MySQL数据库,感兴趣的朋友可以了解下
    2020-09-09
  • mysql嵌套查询和联表查询优化方法

    mysql嵌套查询和联表查询优化方法

    本文描述了mysql嵌套查询和联表查询优化的方法,有些情况可以使用这种优化方法,而有些情况,这种方法就无能为力了
    2013-02-02
  • VS2022连接数据库MySQL并进行基本的表的操作指南

    VS2022连接数据库MySQL并进行基本的表的操作指南

    鉴于MySQL数据库的流行与强大,决定多学习使用,下面这篇文章主要给大家介绍了关于VS2022连接数据库MySQL并进行基本的表的操作指南,文中通过图文介绍的非常详细,需要的朋友可以参考下
    2023-05-05
  • Mysql提升索引效率优化的八种方法总结

    Mysql提升索引效率优化的八种方法总结

    索引实际上也是一张表,保存了主键和索引的字段,并且指向实体表的记录,所以索引也是需要占用空间的,这篇文章主要给大家介绍了关于Mysql提升索引效率优化的八种方法,需要的朋友可以参考下
    2024-04-04
  • MySQL约束超详解

    MySQL约束超详解

    这篇文章主要介绍了MySQL约束包括非空约束、唯一约束、主键约束、外键约束,需要的朋友可以具体参考下面文章内容
    2021-09-09
  • MySQL实现两张表数据的同步

    MySQL实现两张表数据的同步

    本文将介绍mysql 触发器实现两个表的数据同步,需要学习MySQL的童鞋可以参考。
    2016-10-10
  • mysql innodb的重要组件汇总

    mysql innodb的重要组件汇总

    这篇文章主要介绍了mysql innodb的重要组件的相关资料,帮助大家更好的理解和学习MySQL,感兴趣的朋友可以了解下
    2020-12-12

最新评论