一、准备
- 官网下载地址:https://dev.mysql.com/downloads/mysql/
- 选择版本:「MySQL Community Server」→ 下拉选择「Windows (x86, 64-bit), ZIP Archive」(无需注册,直接点击底部「No thanks, just start my download」下载)。
二、安装
1. 解压压缩包到指定目录
- 右键解压下载的 ZIP 包(如
mysql-8.0.39-winx64.zip),建议解压到 无中文、无空格的路径(重要!避免后续报错)。 - 示例路径:
D:\Program Files\MySQL\mysql-8.0.39-winx64(下文简称「MySQL 根目录」)。
2. 配置环境变量(可选,方便全局调用)
- 右键「此电脑」→「属性」→「高级系统设置」→「环境变量」;
- 在「系统变量」中找到「Path」→ 编辑 → 新建 → 粘贴 MySQL 根目录下的
bin路径(如D:\Program Files\MySQL\mysql-8.0.39-winx64\bin); - 点击「确定」保存,关闭所有窗口(环境变量生效需重启命令行)。
3. 创建 MySQL 配置文件(my.ini)
MySQL 8.0 压缩包默认无配置文件,需手动在「MySQL 根目录」下新建
my.ini 文件(注意后缀为 .ini,不是 .txt),复制以下内容并修改 2 处路径(basedir 和 datadir):[mysqld] # 设置3306端口(默认端口,可修改) port=3306 # 设置MySQL安装目录(替换为你的MySQL根目录) basedir=D:\Program Files\MySQL\mysql-8.0.39-winx64 # 设置MySQL数据存储目录(替换为你的数据目录,建议在根目录下新建data文件夹) datadir=D:\Program Files\MySQL\mysql-8.0.39-winx64\data # 允许最大连接数 max_connections=200 # 允许连接失败的次数(防止暴力破解) max_connect_errors=10 # 服务端使用的字符集默认为UTF8MB4(支持emoji) character-set-server=utf8mb4 # 创建新表时使用的默认存储引擎 default-storage-engine=INNODB # 默认认证插件(MySQL8.0默认,需指定,否则旧客户端无法连接) default_authentication_plugin=caching_sha2_password[mysql] # 客户端默认字符集 default-character-set=utf8mb4[client] # 客户端连接端口 port=3306 default-character-set=utf8mb4
4. 初始化 MySQL 并生成临时密码
- 以「管理员身份」打开「命令提示符」,切换到 MySQL 根目录的
bin目录(若已配置环境变量可跳过此步): - 执行初始化命令(生成数据目录和临时 root 密码):
mysqld --initialize --console
- 关键操作:初始化成功后,命令行会输出 临时 root 密码(格式如
root@localhost: 随机字符串),请复制保存(后续登录需用,丢失需重新初始化)。 - 示例输出:
2025-12-01T08:00:00.123456Z 6 [Note] [MY-010454] [Server] A temporary password is generated for root@localhost: abc123!@#*(红字部分为临时密码) - 若未找到临时密码:检查
my.ini路径是否正确,或删除data文件夹(若已生成)后重新执行初始化命令。
5. 安装 MySQL 服务
- 命令行执行(服务名默认
MySQL,可自定义如MySQL8):
mysqld --install MySQL
- 成功提示:
Service successfully installed. - 失败处理:若提示「The service already exists」,说明之前安装过 MySQL 服务,执行以下命令删除旧服务后重新安装:
- 修改服务名,先卸载,再安装
卸载:mysqld --remove MySQL 安装:mysqld --install MySQL8
6. 启动 MySQL 服务
- 执行启动命令:
- 成功提示:
MySQL 服务正在启动... MySQL 服务已经启动成功。 - 停止服务命令(后续需关闭时用):
net stop MySQL
三、登录 MySQL 并修改密码
1. 登录 MySQL(使用临时密码)
- 命令行执行(
-u root表示 root 用户,-p表示需要输入密码):
mysql -u root -p
- 按回车后,粘贴之前保存的 临时密码(输入时不显示,直接粘贴后回车即可)。
- 成功登录提示:命令行变为
mysql>(表示已进入 MySQL 终端)。
2. 修改 root 密码(必须操作,临时密码无法长期使用)
- 执行修改密码命令(替换
新密码为你的自定义密码,需满足 MySQL8.0 密码策略:至少 8 位,包含大小写字母、数字、特殊字符,如Root@1234):
ALTER USER 'root'@'localhost' IDENTIFIED BY '新密码';
- 成功提示:
Query OK, 0 rows affected (0.01 sec) - 刷新权限(可选,确保密码生效):
FLUSH PRIVILEGES;
3. 退出 MySQL
- 执行退出命令:
exit;
- 重新登录验证:用新密码执行
mysql -u root -p,登录成功即表示密码修改完成。
四、远程访问
修改 my.ini
[mysqld] # 1. 绑定IP(关键!默认仅绑定localhost,远程无法访问) # 0.0.0.0 表示允许所有IP连接(推荐);也可指定具体IP(如192.168.1.100) bind-address = 0.0.0.0# 2. 确保端口开放(默认3306,无需修改,除非自定义端口) port = 3306# 3. 认证插件(MySQL8默认caching_sha2_password,部分旧客户端(如Navicat11)不兼容) # 若远程连接提示“认证插件不支持”,可临时改为旧插件(非必需,优先升级客户端) # default_authentication_plugin = mysql_native_password