MySQL 5.7 解压版安装与配置指南
MySQL 5.7 简介
MySQL 5.7 在可管理性方面进行了重要升级,默认引入了全新的 sys Schema。该 Schema 由视图、存储过程、函数、表和触发器组成,将原本分散在 performance_schema 和 information_schema 中的监控数据以直观、易读的方式重新组织。它能够帮助 DBA 和开发者快速定位关键问题,例如:哪些会话占用了大量资源?哪些主机访问最频繁?实例内存如何分配?这种人性化的性能视角显著提升了数据库的易用性与诊断效率。
一、获取 MySQL 安装文件
建议前往 MySQL 官方网站下载对应版本的 Windows (x86, 64-bit), ZIP Archive(解压版)。下载完成后解压至目标目录即可,无需运行安装程序。
二、配置系统环境变量
- 打开环境变量设置:右键'此电脑' → '属性' → '高级系统设置' → '环境变量'。
- 新建系统变量:
- 变量名:
MYSQL_HOME - 变量值:MySQL 解压后的完整目录路径(例如
D:/MySQL/mysql-5.7.43-winx64)
- 变量名:
- 修改 Path 变量:在系统变量
Path中新增%MYSQL_HOME%/bin。
三、创建配置文件
解压版默认不包含配置文件,需在 MySQL 根目录下手动创建 my.ini,并填入以下内容:
[mysqld]
# 端口号
port = 3306
# MySQL 解压路径(请根据实际情况修改)
basedir = D:/MySQL/mysql-5.7.43-winx64
# 数据存储路径(请根据实际情况修改)
datadir = D:/MySQL/mysql-5.7.43-winx64/data
# 最大连接数
max_connections = 200
# 字符集
character-set-server = utf8
default-storage-engine = INNODB
sql_mode = NO_ENGINE_SUBSTITUTION,STRICT_TRANS_TABLES
[mysql]
default-character-set = utf8
注意:请务必将
basedir和datadir修改为实际的解压路径。路径推荐使用正斜杠/或双反斜杠\\以避免转义问题。
四、安装与初始化服务
重要:以下命令需在 以管理员身份运行 的命令提示符(CMD)中执行。
- 进入 MySQL 的 bin 目录:
cd %MYSQL_HOME%/bin
- 安装 MySQL 服务:
mysqld -install
- 初始化数据库:
mysqld --initialize
初始化完成后,启动服务:
net start mysql
若提示服务启动成功,则 MySQL 已正常运行。
五、设置与修改 root 密码
由于 --initialize 会生成临时密码,为简化流程,此处采用跳过权限验证的方式修改密码。
- 停止 MySQL 服务:
net stop mysql
- 开启免密登录:在
my.ini的[mysqld]节点下添加一行:
skip-grant-tables
- 重启服务:
net start mysql
- 登录数据库:
mysql -u root -p
提示输入密码时直接按回车即可进入。 5. 修改密码:
use mysql;
update user set authentication_string=password('root123') where user='root';
flush privileges;
注:请将
root123替换为你的实际密码。
- 恢复权限验证:
- 停止 MySQL 服务:
net stop mysql - 删除或注释掉
my.ini中的skip-grant-tables并保存。 - 重新启动服务:
net start mysql
- 停止 MySQL 服务:
- 验证并重置密码过期状态:
使用新密码登录:
mysql -u root -p首次登录可能会提示密码已过期,需执行以下命令重置:
alter user user() identified by 'root123';
执行 use mysql; 测试,若正常切换则说明配置成功。
六、使用可视化工具连接(可选)
为方便日常管理,推荐使用 Navicat 等图形化数据库管理工具。新建连接时,主机填写 localhost 或 127.0.0.1,端口 3306,用户名 root,密码为上述设置的密码即可。
附:MySQL 5.7 核心特性
- 原生 JSON 支持:自 5.7.8 起引入原生 JSON 数据类型,采用优化的二进制格式存储,支持高效的键值访问与数组索引,无需解析全文即可提取嵌套数据。
- 自动文档校验:内置 JSON 规范校验,确保写入数据的合法性。
- 丰富的 JSON 函数:提供
JSON_ARRAY()、JSON_OBJECT()、JSON_EXTRACT()等函数,便于在关系型数据库中灵活处理半结构化数据,兼顾 NoSQL 的灵活性与关系数据库的强一致性。


