mysql在Windows环境下完整安装与初始化配置流程

来源:这里教程网 时间:2026-02-28 20:41:22 作者:

下载 MySQL 安装包时该选 MSI 还是 ZIP?

Windows 下推荐直接使用

mysql-installer-community
(MSI 图形化安装器),它会自动处理服务注册、PATH 添加、初始 root 密码设置等。ZIP 归档版虽轻量,但需手动配置
my.ini
、注册 Windows 服务、初始化数据目录——新手极易卡在
mysqld --initialize
报错或服务启动失败。

注意:MySQL 8.0+ 默认启用

caching_sha2_password
认证插件,老版本客户端(如某些 Navicat 旧版、PHP 7.2 以下)可能连不上,这不是安装失败,是认证不兼容。

安装过程中必须改掉的默认选项

运行 MSI 安装器后,在「Setup Type」页选择

Server Only
Full
即可,但以下三处必须手动干预:

「Config Type」选
Development Computer
(开发机),避免被强制设为高安全策略(比如禁用本地 socket 连接)
「Authentication Method」务必勾选
Use Legacy Authentication Method
(即
mysql_native_password
),否则后续用命令行
mysql -u root -p
会提示
Client does not support authentication protocol requested by server
「Root Password」必须设一个强密码并牢记;如果留空或跳过,安装器可能生成随机密码写入日志,但 Windows 事件查看器里难找,极易导致后续无法登录

安装后首次登录失败的典型原因与修复

安装完成点击「Next」退出后,常遇到

Access denied for user 'root'@'localhost'
。这不是密码输错,而是服务未真正启动或认证方式不匹配:

检查服务是否运行:
services.msc
中查找
MySQL80
(或你自定义的服务名),状态应为「正在运行」;若为「已停止」,右键启动,失败则看 Windows 事件日志中
Application
日志下的 MySQL 错误
确认认证插件:
mysql -u root -p -e "SELECT user, host, plugin FROM mysql.user WHERE user='root';"
plugin
列显示
caching_sha2_password
,需重置为传统方式:
ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY '你的新密码'; FLUSH PRIVILEGES;
防火墙或杀软拦截:临时关闭 Windows Defender 防火墙,测试能否连上;部分国产安全软件会静默拦截
mysqld.exe
网络行为

初始化配置文件 my.ini 的最小必要修改项

安装器生成的

my.ini
通常位于
C:\ProgramData\MySQL\MySQL Server 8.0\my.ini
ProgramData
是隐藏文件夹)。必须检查并调整以下几项:

basedir
必须指向实际安装路径,例如
basedir=C:/Program Files/MySQL/MySQL Server 8.0
(注意斜杠方向,Windows 下反斜杠易引发解析错误)
datadir
路径末尾不能有反斜杠,且目录必须存在、MySQL 服务账户(通常是
NT SERVICE\Mysql80
)有完全控制权限;若手动迁移过数据目录,权限缺失会导致服务启动即退出
添加
default_authentication_plugin=mysql_native_password
[mysqld]
段下,确保新建用户默认用兼容认证
如需远程访问,加
bind-address=0.0.0.0
并开放 Windows 防火墙端口 3306,但生产环境严禁这么做

改完保存,重启 MySQL 服务生效。别信「改完自动热加载」——MySQL on Windows 不支持运行时重载

my.ini

相关推荐