🚀 Windows 下 MySQL 安装与环境配置完全指南
作为开发者必备的数据库技能,MySQL 在 Windows 环境下的安装配置常常让新手踩坑。本文将带你从零开始完成 MySQL 的安装、配置到基础使用,并附赠常见问题解决方案!
📦 第一部分:MySQL 安装
1. 下载 MySQL 安装包
推荐从 MySQL 官方下载社区版(完全免费):
- 官网地址:dev.mysql.com/downloads/m…
- 选择 MySQL Installer for Windows
- 推荐下载体积较小的 web-community 版本(在线安装)
💡 小贴士:如果官网下载慢,可以使用国内镜像源,如华为云镜像
2. 运行安装向导
-
双击下载的
.msi安装文件 -
选择安装类型:
- Developer Default:开发者默认(推荐)
- Server only:仅安装服务器
- Client only:仅安装客户端工具
- Custom:自定义安装
-
点击 "Execute" 开始安装依赖项
3. 产品配置
安装完成后进入配置向导:
-
High Availability:选择 "Standalone MySQL Server"
-
Type and Networking:
- Config Type: Development Computer(开发机)
- 端口保持默认 3306
- 勾选 "Open Firewall port for network access"(如需远程访问)
-
Authentication Method:
- 推荐选择强密码加密 "Use Strong Password Encryption"
-
Account and Roles:
- 设置 root 密码(务必记住!)
- 可以添加额外用户(可选)
-
Windows Service:
- 服务名保持默认 "MySQL80"
- 勾选 "Start the MySQL Server at System Startup"
⚙️ 第二部分:环境配置
1. 配置环境变量
为了能在任意位置使用 mysql 命令:
-
右键 "此电脑" → 属性 → 高级系统设置 → 环境变量
-
在系统变量的 Path 中添加:
text
C:\Program Files\MySQL\MySQL Server 8.0\bin -
打开 cmd 测试:
bash
mysql --version
2. 配置文件 my.ini 调整
MySQL 配置文件位于:
text
C:\ProgramData\MySQL\MySQL Server 8.0\my.ini
常用优化配置(根据需求调整):
ini
[mysqld]
# 设置字符集
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci
# 性能相关
max_connections=151
innodb_buffer_pool_size=256M
# 日志
general_log=0
slow_query_log=1
修改后需要重启 MySQL 服务:
bash
net stop mysql80
net start mysql80
🔍 第三部分:基础使用
1. 连接 MySQL
bash
mysql -u root -p
# 输入之前设置的root密码
2. 基础操作命令
sql
-- 显示所有数据库
SHOW DATABASES;
-- 创建新数据库
CREATE DATABASE mydb CHARACTER SET utf8mb4;
-- 使用数据库
USE mydb;
-- 创建表
CREATE TABLE users (
id INT AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(50) NOT NULL,
email VARCHAR(100) UNIQUE
);
-- 插入数据
INSERT INTO users (username, email) VALUES ('掘金用户', 'juejin@example.com');
🛠️ 第四部分:可视化工具推荐
- MySQL Workbench(官方工具,已随安装包安装)
- DBeaver(开源跨平台)
- Navicat(付费但强大)
- HeidiSQL(轻量级免费工具)
⚠️ 第五部分:常见问题解决
1. 服务无法启动
-
检查错误日志:
C:\ProgramData\MySQL\MySQL Server 8.0\Data*.err -
常见原因:端口冲突、数据损坏
-
解决方案:
bash
mysqld --console # 查看实时错误 mysqld --initialize # 重新初始化(会重置数据)
2. 忘记 root 密码
-
停止 MySQL 服务
-
创建临时启动文件
init.txt:text
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密码'; -
以跳过权限方式启动:
bash
mysqld --init-file=C:\init.txt --shared-memory --skip-grant-tables
3. 中文乱码问题
确保数据库、表和连接都使用 utf8mb4:
sql
-- 创建数据库时指定
CREATE DATABASE mydb CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
-- 连接后执行
SET NAMES utf8mb4;
🎁 附赠:开发实用技巧
-
批量导入数据:
bash
mysql -u root -p mydb < dump.sql -
导出数据库:
bash
mysqldump -u root -p mydb > backup.sql -
查看运行进程:
sql
SHOW PROCESSLIST; KILL [进程ID]; -- 终止卡死查询