一、MySQL 安装教程
1. Windows 系统安装(以 MySQL 8.0 为例)
步骤 1:下载 MySQL Installer
-
访问 MySQL 官网下载页面。
-
选择 Windows (x86, 64-bit), MSI Installer(推荐使用完整版
mysql-installer-web-community-8.0.xx.xx.msi
)。 -
点击下载,保存到本地目录。
步骤 2:运行安装程序
-
双击
.msi
文件启动安装向导。 -
选择安装类型:
-
Developer Default:包含 MySQL Server、Workbench、Shell 等开发工具(适合开发者)。
-
Server only:仅安装 MySQL 服务器(适合生产环境)。
-
Custom:自定义选择组件(推荐高级用户)。
-
-
选择组件(若选择 Custom):
-
必选:
MySQL Server
、MySQL Workbench
(图形化管理工具)。 -
可选:
MySQL Shell
(命令行工具)、Connector/J
(Java 驱动)等。
-
步骤 3:配置 MySQL 服务器
-
高可用性设置:
-
选择 Standalone MySQL Server / Classic MySQL Replication(单机模式)。
-
-
网络与端口:
-
默认端口
3306
(若被占用可改为3307
等)。 -
勾选 Open Firewall port for network access(允许远程连接)。
-
-
账户与角色:
-
设置 root 密码(建议使用强密码,如
MySql@2024!
)。 -
可添加新用户(如
admin
)并分配权限。
-
-
Windows 服务配置:
-
服务名默认为
MySQL80
。 -
勾选 Start the MySQL Server at System Startup(开机自启)。
-
步骤 4:验证安装
-
打开命令提示符(CMD)输入:
mysql -u root -p
-
输入 root 密码,若显示
mysql>
提示符,则安装成功。 -
使用 Workbench 连接:
-
打开 MySQL Workbench,点击
+
新建连接。 -
输入主机名
localhost
、端口3306
、用户名root
和密码。
-
2. macOS 系统安装(两种方法)
方法 1:使用 Homebrew(推荐)
-
安装 Homebrew:
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
-
安装 MySQL:
brew install mysql
-
启动服务并设置开机自启:
brew services start mysql
-
安全初始化:
mysql_secure_installation
-
按提示设置 root 密码。
-
移除匿名用户:输入
Y
。 -
禁止远程 root 登录:输入
Y
。 -
删除测试数据库:输入
Y
。 -
重新加载权限表:输入
Y
。
-
方法 2:使用 DMG 安装包
-
从 MySQL 官网 下载 macOS 版 DMG 文件。
-
双击安装包,按向导完成安装。
-
配置环境变量:
echo 'export PATH="/usr/local/mysql/bin:$PATH"' >> ~/.zshrc source ~/.zshrc
-
启动服务:
-
打开“系统偏好设置” -> 点击 MySQL -> 点击 Start MySQL Server。
-
3. Linux 系统安装(Ubuntu/CentOS)
Ubuntu/Debian
-
更新软件源:
sudo apt update && sudo apt upgrade -y
-
安装 MySQL Server:
sudo apt install mysql-server -y
-
安全配置:
sudo mysql_secure_installation
-
设置密码强度策略(推荐选择
2
:强密码)。 -
其他选项与 macOS 类似。
-
CentOS/RHEL
-
添加 MySQL Yum 仓库:
sudo rpm -Uvh https://dev.mysql.com/get/mysql80-community-release-el7-6.noarch.rpm
-
安装 MySQL Server:
sudo yum install mysql-server -y
-
启动服务:
sudo systemctl start mysqld sudo systemctl enable mysqld
-
查看临时 root 密码:
sudo grep 'temporary password' /var/log/mysqld.log
-
登录并修改密码:
mysql -u root -p ALTER USER 'root'@'localhost' IDENTIFIED BY 'NewPassword123!';
二、安装后基本配置
1. 配置文件详解(my.cnf/my.ini)
-
Linux/macOS:
/etc/my.cnf
或/etc/mysql/my.cnf
-
Windows:
C:\ProgramData\MySQL\MySQL Server 8.0\my.ini
常用配置项:
ini:
[mysqld] datadir=/var/lib/mysql socket=/var/lib/mysql/mysql.sock character-set-server=utf8mb4 # 字符集 collation-server=utf8mb4_unicode_ci # 排序规则 max_connections=200 # 最大连接数 innodb_buffer_pool_size=1G # InnoDB 缓冲池大小 [client] default-character-set=utf8mb4
2. 创建新用户并授权
-- 创建用户
CREATE USER 'devuser'@'%' IDENTIFIED BY 'User@1234';
-- 授予所有数据库权限
GRANT ALL PRIVILEGES ON *.* TO 'devuser'@'%' WITH GRANT OPTION;
-- 刷新权限
FLUSH PRIVILEGES;
三、常见问题及解决方案
1. 安装失败:ERROR 2003 (HY000): Can't connect to MySQL server
-
可能原因:
-
MySQL 服务未启动。
-
防火墙阻止了 3306 端口。
-
配置文件错误(如绑定地址为
127.0.0.1
而非0.0.0.0
)。
-
-
解决方法:
# Linux/macOS sudo systemctl restart mysql # Windows services.msc -> 重启 MySQL 服务 # 检查端口监听 netstat -an | grep 3306 # 修改绑定地址(my.cnf) [mysqld] bind-address = 0.0.0.0
2. 忘记 root 密码(通用方法)
-
停止 MySQL 服务:
sudo systemctl stop mysql # Linux/macOS net stop MySQL80 # Windows
-
跳过权限验证启动:
sudo mysqld_safe --skip-grant-tables &
-
重置密码:
UPDATE mysql.user SET authentication_string=PASSWORD('NewPass123!') WHERE User='root'; FLUSH PRIVILEGES; exit;
-
重启服务:
sudo systemctl restart mysql
3. 中文乱码问题
-
确认当前字符集:
SHOW VARIABLES LIKE 'character_set%';
-
修改配置文件(
my.cnf
): -
ini:
[mysqld] character-set-server=utf8mb4 collation-server=utf8mb4_unicode_ci -
重启服务并重新导入数据。
4. 性能优化:慢查询日志
-
启用慢查询日志:
ini:
[mysqld] slow_query_log=1 slow_query_log_file=/var/log/mysql/mysql-slow.log long_query_time=2
-
分析慢查询:
mysqldumpslow -s t /var/log/mysql/mysql-slow.log
四、高级技巧与工具推荐
1. 使用 MySQL Workbench 管理数据库
-
功能:
-
可视化执行 SQL 语句。
-
数据导入/导出(支持 CSV、JSON)。
-
性能监控和服务器状态分析。
-
2. 数据库备份与恢复
-
全量备份:
mysqldump -u root -p --all-databases > backup.sql
-
恢复数据:
mysql -u root -p < backup.sql
3. 安全加固建议
-
定期更新 MySQL 版本。
-
限制 root 用户远程登录。
-
启用防火墙规则,仅允许信任 IP 访问 3306 端口。
五、总结
通过本教程,您已掌握在 Windows、macOS 和 Linux 系统上安装 MySQL 的详细步骤,并学会解决常见问题。无论是开发环境还是生产部署,合理配置和安全加固都是关键。推荐结合 MySQL 官方文档和社区资源(如 Stack Overflow)持续深入学习。