mysql无法成功启动服务的解决方法(通俗易懂!)

软件发布|下载排行|最新软件

当前位置:首页IT学院IT技术

mysql无法成功启动服务的解决方法(通俗易懂!)

h阿泉有个梦   2023-03-21 我要评论

MySQL 安装成功后,启动失败,提示如下:

或者是

尝试以下步骤

1.如果在mysql的安装路径中有没有配置文件

如果没有配置文件则自己手动创建一个,文件名为:my.ini

添加内容如下:

简介版

[mysqld]
basedir=E:\MySQL\mysql-5.7.22-winx64(mysql的安装路径)
datadir=E:\MySQL\mysql-5.7.22-winx64\data\ (mysql的安装路径\data\)
port=3306

完整版

[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

 注意:

datadir属性后的data文件夹一定不要自己手动创建,本人尝试手动创建会有问题,如果自己创建了可以删除掉,再执行后面的操作。

2.mysql5.7以上版本默认没有一个data目录,即没有初始化服务。需要先初始化mysql才可以启动服务否则会报 “服务没有报告任何错误”,启动失败。

解决方法:

进入mysql的bin目录

例如我是装在E盘底下,文件路径为:E:\MySQL\mysql-5.7.22-winx64\bin
 
打开cmd后  默认在C盘
咱们这么操作
e:   (盘:然后回车)
接着就进入了e盘
紧接着输入:cd E:\MySQL\mysql-5.7.22-winx64\bin        回车
就进入了bin目录

具体如下图所示:

执行mysqld --initialize-insecure ,第一次执行的话,时间会久一些,执行结束后没有输出信息,查看bin的同级目录下会多出一个data文件夹,里面一堆文件。

③再次执行net start mysql命令启动服务,发现启动成功

问题分析:

①忘记密码

②首次安装mysql,不知道密码 

解决方法:

首先停止mysql服务。可通过net stop mysql或者任务管理器中关闭。 

 为什么会发生如上图所示的问题“拒绝访问”?

因为 没以管理员方式打开,下图是我们以管理员方式打开后:

第二步:跳过Mysql密码验证

进入命令提示符(管理员登陆)操作,进入mysql目录中bin文件夹下,使用以下代码来跳过权限验证。

mysqld -console --skip-grant-tables --shared-memory

输入执行后没有反馈,新开一个管理员窗口重新执行。(这是第二个窗口)

进入目录后,确保自己已经关闭了Mysql的服务:net stop mysql

关闭Mysql服务之后,继续在X:\XXXXX-winx64\bin(mysql的bin目录)目录下进行操作:

输入:

mysqld --console --skip-grant-tables --shared-memory 

在输入这行代码之后,如下显示,我们就已经成功跳过Mysql的密码登录了

第三步:无密码方式进入Mysql

在上述步骤之后,再打开一个管理员模式运行的cmd.exe (这是第三个窗口)

进入mysql下的bin目录后,直接登录mysql

如图:

①接着执行 use mysql语句 (选择mysql数据库,防止出现问题)

②然后执行flush privileges;语句

③最重要一步(修改密码)

执行alter user root@localhost identified by '123456';语句,把密码修改为123456(这里填自己想要的密码)

④执行 exit语句(退出mysql)

⑤把第一个cmd窗口关闭,在第二个cmd窗口进入到mysql的bin目录,再执行net start mysql启动mysql

⑥最后进行“修改密码”后的验证

执行语句mysql -uroot -p,输入刚刚设置的密码即可登录成功

总结:

Copyright 2022 版权所有 软件发布 访问手机版

声明:所有软件和文章来自软件开发商或者作者 如有异议 请与本站联系 联系我们