WINDOWS下安装Mysql出现的问题和解决过程

本文详细记录了解决MySQL5.7在本地部署时遇到的启动失败问题,包括配置ini文件、创建data目录、调整服务状态及获取初始密码等关键步骤。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

由于项目需要,要在本地做一个数据库,于是从官网下载一个MYSQL并按照指导意见安装。
下载过程无需赘述,可以参考博主“放飞的回忆”,原文地址:https://www.cnblogs.com/ziyoublog/p/9722849.html。
我下载的版本是Community模块下的MySQL Community Server,mysql-5.7.27-winx64,根据说明,该版本的mysql只需要解压后正确配置数据库环境变量即可使用。但是按照上文博主的说明,启动数据时出现下列报错。

D:\mysql-5.7.27-winx64\mysql-5.7.27-winx64\bin>net start mysql
MySQL 服务正在启动 .
MySQL 服务无法启动。

服务没有报告任何错误。

请键入 NET HELPMSG 3534 以获得更多的帮助。


D:\mysql-5.7.27-winx64\mysql-5.7.27-winx64\bin>NET HELPMSG 3534

服务没有报告任何错误。

最蛋疼的是日志中竟然只有一条服务没有报告任何错误。
WTF,这只能考百度了,查了一下,是自己的ini文件配置的问题。官网下载的这个版本包打开后并没有default.ini的配置文件,需要手动添加任意名称的ini包,比如我的就在D:\mysql-5.7.27-winx64\mysql-5.7.27-winx64目录下,就在该目录下直接创建一个xx.ini,同时请创建一个空的data目录。该目录会在初始化执行后生成一系列的配置文件。
xx.ini的内容主要是mysql的两个路径和服务端口的配置
以我的安装路径举例,该文件内容为

[mysqld]
basedir = D:\mysql-5.7.27-winx64\mysql-5.7.27-winx64
datadir = D:\mysql-5.7.27-winx64\mysql-5.7.27-winx64\data
port = 3306

完成了配置之后,请务必确认当前的mysql服务状态,在任务管理器中检查是否上次未启动成功的服务还有进程残留,请杀掉mysql进程后进行如下几个操作

D:\mysql-5.7.27-winx64\mysql-5.7.27-winx64\bin>mysqld --remove
Service successfully removed.

D:\mysql-5.7.27-winx64\mysql-5.7.27-winx64\bin>mysqld --install
Service successfully installed.

D:\mysql-5.7.27-winx64\mysql-5.7.27-winx64\bin>mysqld --initialize --console
2019-08-17T00:38:30.769604Z 0 [Warning] TIMESTAMP with implicit DEFAULT value is
 deprecated. Please use --explicit_defaults_for_timestamp server option (see doc
umentation for more details).
2019-08-17T00:38:31.643204Z 0 [Warning] InnoDB: New log files created, LSN=45790

2019-08-17T00:38:31.955204Z 0 [Warning] InnoDB: Creating foreign key constraint
system tables.
2019-08-17T00:38:32.064404Z 0 [Warning] No existing UUID has been found, so we a
ssume that this is the first time that this server has been started. Generating
a new UUID: 56c80ed3-c087-11e9-bee7-e454e89def84.
2019-08-17T00:38:32.095604Z 0 [Warning] Gtid table is not ready to be used. Tabl
e 'mysql.gtid_executed' cannot be opened.
2019-08-17T00:38:32.111204Z 1 [Note] A temporary password is generated for root@
localhost: p+qy7rwBEwol

D:\mysql-5.7.27-winx64\mysql-5.7.27-winx64\bin>net start mysql
MySQL 服务正在启动 .
MySQL 服务已经启动成功。

注意上面日志的流程,mysqld --remove是删除之前安装的信息,确保安装完整。
mysqld --install是安装过程,没什么可说的。
mysqld --initialize --console是将初始化信息同步输出到控制台,很多安装指导文档都没有–console参数,如果不加该参数,你就无法找到初始化数据库的密码。按照一般的指导文档,第一次安装mysql进行链接的时候是不需要密码的,但是我在实测的时候发现没有初始密码是无法连接的,所以该步骤建议将信息输出,上面的初始密码为p+qy7rwBEwol。
此过程中还要注意,如果在init之前data目录下有文件残余,则会出现3523的错误信息

D:\mysql-5.7.27-winx64\mysql-5.7.27-winx64\bin>net start mysql
MySQL 服务正在启动 ...................
MySQL 服务无法启动。

请键入 NET HELPMSG 3523 以获得更多的帮助。

出现上述问题的时候,请先清除掉data目录下的内容重新初始化即可。
使用初始化过程中生成的密码可以直接联机数据库,进入数据库后再修改密码即可,修改密码参考下面的过程

D:\mysql-5.7.27-winx64\mysql-5.7.27-winx64\bin>mysql -u root -p
Enter password: ************
Welcome to the MySQL monitor.  Commands end with ; or \g.
Your MySQL connection id is 2
Server version: 5.7.27

Copyright (c) 2000, 2019, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

mysql> ALTER USER 'root'@'localhost' IDENTIFIED BY '123'
    -> ;
Query OK, 0 rows affected (0.00 sec)

mysql> exit
Bye

之后就可以愉快地使用各种IDE工具来做数据了。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

大牛眼

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值