MySQL 服务无法启动,且服务没有报告任何错误
作者:mmseoamin日期:2023-12-11

今天运行毕设项目在使用到mysql时候出现了一下两种错误,绊了一整天,所以把最后有用的办法总结一下,防止下一次摸不着头脑

  • 错误一:mysql 服务无法正常启动,且服务没有报告任何错误。
    mysql 服务正在启动 .
    mysql 服务无法启动。
    服务没有报告任何错误。
    

    在这里插入图片描述

    • 错误二:ERROR 2003 (HY000): Can’t connect to MySQL server on ‘localhost’ (10061)

      在这里插入图片描述

      首先是无法正常启动MySQL的解决办法

      在这里插入图片描述

      1. 方法一:尝试手动启动MySQL服务

        在dos窗口下执行 services.msc 命令,在弹出服务窗口后找到MySQL并右键启动(我当时已经无法启动,点击启动后会启动中断,所以对我来说pass咯)

        在这里插入图片描述

      2. 方法二:清空data文件并安装(成功)

        1. 清空MySQL目录下的data文件(我是先备份好了一份,然后直接清空了data而不是删除data又再建data文件夹)在这里插入图片描述

        2. 在bin目录下执行命令行 mysqld --initialize --console (root@localhost:后面这一串就是mysql的初始登录密码,最好复制保留,你后面要用到的)在这里插入图片描述

        3. 如果已安装mysql服务,需要先删除该服务 sc delete mysql 在这里插入图片描述

        4. 安装MySQL服务 mysqld --install mysql在这里插入图片描述

        5. 再次尝试启动MySQL服务 net start mysql(这次就成功了)在这里插入图片描述

      接着就是数据库连接错误问题

      在这里插入图片描述

      1. 配置好mysql文件下的my.ini文件,参考:(目录记得更改为自己的)
      [client]
      # 设置mysql客户端默认字符集
      default-character-set=utf8
       [mysqld]
      # 设置3306端口
      port = 3306
      # 设置mysql的安装目录
      basedir ="E:\mysql-8.0.18-winx64"
      # mysql数据存放目录
      datadir ="E:\mysql-8.0.18-winx64\data"
      # 允许最大连接数
      max_connections=20
      # 服务端使用的字符集默认为8比特编码的latin1字符集
      character-set-server=utf8
      # 创建新表时将使用的默认存储引擎
      default-storage-engine=INNODB
      
      1. 管理员身份运行cmd执行 sc query mysql 和 sc delete mysql 把原本安装好的[mysql删除](分开执行)在这里插入图片描述

        在这里插入图片描述

      2. 再次清空MySQL目录下的data文件夹

      3. 在mysql的bin文件夹下运行 mysqld --initialize-insecure,等待运行完成。在这里插入图片描述

      4. 继续运行 mysqld.exe --install mysql --defaults-file=E:\mysql-8.0.18-winx64\my.ini (地址记得更改)在这里插入图片描述

      5. 然后再尝试启动服务 net start mysql在这里插入图片描述