1.下载MySQL免安装zip文件

镜像地址可在MySQL-8.0文件夹内搜索winx64.zip,下载最新版本

2.安装MySQL

2.1 解压缩

解压缩安装包到任意目录,并创建配置文件my.ini

路径不要包含中文

2022-05-06T12:24:44.png
配置文件的内容为
datadir设置的目录必须为空或者不存在

[mysqld]
# 设置3306端口
port=3306
# 设置mysql的安装目录
basedir=C:\Program Files\mysql-8.0.29-winx64
# 设置mysql数据库的数据的存放目录
datadir=C:\MySqlData
# 允许最大连接数
max_connections=200
# 允许连接失败的次数。
max_connect_errors=10
# 服务端使用的字符集默认为utf8mb4
character-set-server=utf8mb4
# 创建新表时将使用的默认存储引擎
default-storage-engine=INNODB
# 默认使用“mysql_native_password”插件认证
#mysql_native_password
default_authentication_plugin=mysql_native_password

[mysql]
# 设置mysql客户端默认字符集
default-character-set=utf8mb4

[client]
# 设置mysql客户端连接服务端时默认使用的端口
port=3306
default-character-set=utf8mb4

2.2 配置环境变量

如需在同一个系统内运行多个MySQL服务,请跳过此步骤,并将命令行cd至bin目录下来执行后续操作

将解压文件夹下的bin路径添加到系统变量的Path值中,方便执行后续操作
2022-05-06T13:10:19.png

2.3 初始化数据目录

本步将会使用配置文件中datadir项设置的目录进行数据的初始化,此目录将会用于存储数据文件,请确保目录磁盘空间充足

管理员权限打开命令提示符,执行命令

mysqld --initialize --console  #初始化数据目录,并生成root账号的密码
#mysqld --initialize-insecure --console  #初始化数据目录,不会生成root密码

使用--initialize会自动生成临时密码,使用--initialize-insecure则密码为空

执行成功会可看到生成了root密码,将其复制出来保存
2022-05-06T12:35:33.png
此时可以看到在datadir所配置的位置生成了文件夹,文件夹中包含了初始化的数据文件
2022-05-06T12:36:46.png
MySQL服务端的Log在默认情况下也位于此文件夹,以.err为后缀,如果服务发生错误,但未在此找到err文件,请确认程序是否具有此文件夹的读写权限

2.4 配置root用户

2.4.1 在命令行启动MySQL服务端

mysqld --console

MySQL服务端的默认配置文件位置读取优先级见下表(my.ini优先于my.cnf),如需指定其他配置文件,需增加参数:--defaults-file="C:\Program Files\mysql-8.0.29-winx64\my2.ini"

文件名备注
%WINDIR%\my.ini, %WINDIR%\my.cnf变量可使用命令echo %WINDIR%查看,默认为C:\WINDOWS
C:\my.ini, C:\my.cnf
BASEDIR\my.ini, BASEDIR\my.cnfBASEDIR为mysqld程序所在bin文件夹的上级目录

2.4.2 再打开一个新的命令行窗口,执行以下命令,使用客户端登录MySQL

mysql u root -p
Enter password: ************ #输入初始化数据目录时,控制台打印的root密码

如果上一步使用了--initialize-insecure参数,则执行的登录命令不需要增加-p参数

2.4.3 修改root密码

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

此处的'mysql'可修改为自定义密码

2.4.4 允许从外部连接root用户

USE mysql;
UPDATE user SET host='%' WHERE user ='root';
FLUSH PRIVILEGES;  #刷新权限
GRANT ALL PRIVILEGES ON *.* TO 'root'@'%'WITH GRANT OPTION;

2.4.5 关闭MySQL

直接在运行MySQL服务端的窗口使用Ctrl+C命令即可,也可使用以下命令关闭

mysqladmin -u root -p shutdown

3.配置系统服务

上一步其实已经完成了MySQL的安装,但只能通过命令行进行启动,和停止和连接,为了方便使用,可将服务端添加至Windows服务,使其可以随Windows启动及关闭。

3.1 安装MySQL服务

mysqld --install [服务名]

[服务名]为可选项,在不填写时的默认名为MySQL

在需安装多个MySQL服务时,可用不同的名字区分,并在服务名后增加参数:--defaults-file="C:\Program Files\mysql-8.0.29-winx64\my2.ini"来指定其他服务的配置文件,避免混乱

3.2 MySQL服务管理

[服务名]在未定义时为mysql(不区分大小写)

  • 启动MySQL服务

    在尝试启动 MySQL 服务之前,请确保运行该服务的操作系统用户(可通过sc qc [服务名]命令中的SERVICE_START_NAME查看)对用户变量%TEMP%和%TMP%以及%TMPDIR%(如有)对应的文件夹有读写权限,该变量对于部分用户的默认路径为:(系统用户)C:\Windows\Temp、(NetworkService)C:\Windows\ServiceProfiles\NetworkService\AppData\Local\Temp、(LocalService)C:\Windows\ServiceProfiles\LocalService\AppData\Local\Temp

    net start [服务名]
  • 停止MySQL服务

    net stop [服务名]
  • 移除MySQL服务

    移除前需先停止MySQL服务

    sc delete [服务名]

    mysqld --remove [服务名]
Last modification:May 10, 2022
如果觉得我的文章对你有用,请随意赞赏