Windows 下推荐使用 MSI 安装器(mysql-installer-community),因其自动处理服务注册、PATH 配置和初始密码设置;ZIP 版需手动配置 my.ini、注册服务及初始化数据目录,新手易出错。

下载 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'。这不是密码输错,而是服务未真正启动或认证方式不匹配:
1、演示:以截图为准 程序试用后台:http://你的域名/admin/login.asp 后台登陆帐号:admin 密码:admin 说明: 这个是基于asp+access的企业网站源码,数据库已设有有防下载,网站更安全 要修改网站,自定义你自己要的页面,和美化页面都是你自己完成,网站源码程序完整,后台功能强大。 调试运行环境:要安装IIS服务器(IIS的安装和配置,安装好后,在地址栏输入:h
- 检查服务是否运行:
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。









