Windows 64 位 mysql 5.7以上版本包解压中没有data目录和my-default.ini和my.ini文件以及服务无法启动的解决办法以及修改初始密码的方法

下载解压mysql文件之后,中间出现了一些问题,终于解决,希望能帮助到需要的朋友。

mysql官网下载地址:https://dev.mysql.com/downloads/mysql/点击打开链接

以8.0.12版本为例

首先安装包解压后,没有网上教程里面提到的data文件夹和my-default.ini

配置环境变量请参照网上教程(https://www.cnblogs.com/jqpy1994/p/9553118.html),这个一般没有问题,即在环境变量中Path中加入MYSQL解压包bin所在路径,我的是:

D:Developmysqlmysql-8.0.12in

主要注意以下几点:

(1)my-default.ini文件存不存在不重要,关键需要自己在根目录下新建一个my.ini文件,具体内容如下:

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8 
[mysqld]
#设置3306端口
port = 3306 
# 设置mysql的安装目录
basedir=D:\softnew\MYSQL\mysql-5.7.20-winx64
# 允许最大连接数
max_connections=200
# 服务端使用的字符集默认为8比特编码的latin1字符集
character-set-server=utf8
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB

可以直接复制粘贴,主要修改下basedir后的路径,注意路径中为\而非

(2)请不要自己创建data文件夹

网上很多教程建议自己新建一个空data文件夹,再在my.ini文件中增加一句:

# 设置mysql数据库的数据的存放目录
datadir=D:\Develop\mysql\mysql-8.0.12\bin\data

但是照做之后问题出现了,这样会导致服务无法启动,不要添加这一句,也不要自己新建data文件夹,由mysql自动生成data就好,那怎么解决呢:

1)以管理员的方式打开cmd命令窗口(win+r输入cmd 后在cmd上单击右键选择以管理员身份运行),并且进入到mysql安装目录的bin目录下(cd)。然后输入命令mysqld install     显示成功

2)再输入:mysqld --initialize      此时应该没有任何提示

3)再输入:net start mysql     显示

 MySQL服务正在启动。。

MySQL服务已经启动成功。

最后data文件夹里面的内容应该显示为:

另注:第一次登陆MYSQL时,会提示要求输入初始密码,这是考虑安全因素,命令:mysqld --initialize会随机生成密码。

初始密码在上图data文件夹下的xxx.err文件中,可以用记事本打开找到

A temporary password is generated for root@localhost(可以用ctrl+f 查找功能

其中 root@localhost后面的一串就即为初始密码

输入密码进入后可以用如下命令修改,这里密码改为root(当然可以改为任意你想要的):

ALTER USER 'root'@'localhost' IDENTIFIED BY 'root';

这里是8.0.12版本,显示基本如下:

原文地址:https://www.cnblogs.com/jqpy1994/p/9553062.html