win10安装MySQL8.0.40,含踩坑记录

发布于:2024-11-28 ⋅ 阅读:(18) ⋅ 点赞:(0)

win10安装MySQL8

win10安装MySQL8.0.40版本全步骤,包含踩坑过程。

下载安装包

官网下载链接:

https://dev.mysql.com/downloads/

选择版本8.0.40,下面选第一个zip
在这里插入图片描述
下载完成后,解压,将解压后的文件夹放在指定目录D:\Program Files,楼主是放在这个目录下,解压的文件夹里没有data文件夹,这个不要手动去建,后面会用命令生成

在这里插入图片描述
在里面新建一个my.ini文件,输入下面的配置信息

[mysqld]
#设置3306端口
port=3306
#设置mysql的安装目录
basedir=D:\Program Files\mysql-8.0.40-winx64
# 设置mysql 数据库的数据的存放目录
datadir=D:\Program Files\mysql-8.0.40-winx64\data
#允许最大连接数
max_connections=200
#允许连接失败的次数。这是为了防止有人从该主机试图攻击数据库系统
max_connect_errors=10
#服务端使用的字符集默认为UTF8
character-set-server=utf8
#创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
[mysql]
#设置 mysql 客户端默认字符集
default-character-set=utf8
[client]
#设置 mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8

配置环境变量

在这里插入图片描述
新建系统变量,变量名:MYSQL_HOME 变量值:D:\Program Files\mysql-8.0.40-winx64 这个路径是上面放解压文件的路径

在这里插入图片描述
编辑Path变量,在里面新加一个%MYSQL_HOME%\bin,随后一路点击确定即可。

初始化MySQL

创建data文件夹

打开cmd窗口,执行mysqld --initialize-insecure命令,会在D:\Program Files\mysql-8.0.40-winx64路径下生成一个data文件夹。

初始化配置文件

执行命令mysqld --defaults-file=..\my.ini --initialize-insecure,这个命令楼主是在D:\Program Files\mysql-8.0.40-winx64\bin这个路径下执行的,里面的defaults-file用的是相对路径,成功后没有提示信息。

安装MySQL服务

执行命令mysqld install,成功后下面会有一行Service successfully installed.文字提示。
在这里插入图片描述

初始化创建root用户

执行命令mysqld --initialize-insecure --user=mysql,成功后没有提示信息。

启动服务

执行命令net start mysql,正常是一次就过。

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

设置root用户密码

执行命令mysqladmin -u root -p password 123456,执行后会提示你输入密码,这个地方要注意不要输入任何内容,直接按回车键即可
在这里插入图片描述

登录验证

执行命令mysql -u root -p,然后输入root用户的密码123456,登录成功。
在这里插入图片描述

踩坑:MySQL 服务正在启动 …MySQL 服务无法启动。服务没有报告任何错误。请键入 NET HELPMSG 3534 以获得更多的帮助。

出现这个提示不要慌,用命令mysqld --console看下错误日志是什么,看日志是少了mysql.component这个,配置文件my.ini中的UTF8character-set-server=utf8写错了,改正后,重新执行mysqld --defaults-file=..\my.ini --initialize-insecure,但是启动还是报错
在这里插入图片描述
网上找了一些博客,没有解决,于是把之前用mysqld --initialize-insecure命令创建的data文件夹删掉了,接着重新执行mysqld --initialize-insecure命令,接着就是上面的命令步骤一步一步执行就成功了,如果有朋友遇到类似的问题,不妨试试楼主的这个办法。