清晰易懂的跨平台 MySQL 安装与配置教程

本教程将手把手教你安装 MySQL 数据库,覆盖 Windows、macOS、Linux 及 Docker 容器化部署,并指出各平台常见坑点,确保安装一次成功!


一、Windows 系统安装 MySQL

1. 下载 MySQL Installer

  1. 访问官网下载页面:https://dev.mysql.com/downloads/installer/
  2. 选择 MySQL Installer for Windows(推荐下载 500MB+ 的完整安装包)。

2. 安装步骤

  1. 双击安装包 → 选择 Custom(自定义安装)。
  2. 添加以下组件:
    • MySQL Server(核心服务)
    • MySQL Workbench(图形化管理工具)
    • MySQL Shell(命令行工具)
  3. 配置 root 密码
    • 设置强密码(至少 8 位,含大小写字母+数字+符号)。
  4. 完成安装 → 打开服务管理器确认 MySQL80 服务已启动。

二、macOS 系统安装 MySQL

1. 通过 Homebrew 安装

bash 复制代码
brew install mysql

2. 启动 MySQL 服务

bash 复制代码
brew services start mysql

3. 安全初始化

bash 复制代码
mysql_secure_installation
# 按提示设置 root 密码、删除匿名用户、禁用远程 root 登录等

三、Linux 系统安装 MySQL(Ubuntu/Debian)

1. 安装 MySQL 服务

bash 复制代码
sudo apt update
sudo apt install mysql-server

2. 安全初始化

bash 复制代码
sudo mysql_secure_installation

3. 检查服务状态

bash 复制代码
systemctl status mysql

四、Docker 部署 MySQL

1. 拉取镜像

bash 复制代码
docker pull mysql:8.0

2. 启动容器

bash 复制代码
docker run -d \
  --name mysql-server \
  -p 3306:3306 \
  -e MYSQL_ROOT_PASSWORD=your_password \
  -v /path/to/mysql-data:/var/lib/mysql \
  mysql:8.0

参数说明

  • -p 3306:3306:映射容器端口到宿主机
  • -v:持久化数据目录(避免容器删除后数据丢失)
  • -e MYSQL_ROOT_PASSWORD:设置 root 密码

3. 进入容器执行命令

bash 复制代码
docker exec -it mysql-server mysql -uroot -p

五、各平台通用验证方法

1. 命令行连接

bash 复制代码
mysql -u root -p
# 输入密码后显示 mysql> 提示符

2. 执行测试查询

sql 复制代码
SHOW DATABASES;

六、新手必看:容易忽略的细节

1. 忘记 root 密码

  • 解决方法
    1. 停止 MySQL 服务:

      bash 复制代码
      sudo systemctl stop mysql  # Linux/macOS
      # 或通过服务管理器停止 Windows 服务
    2. 启动安全模式并重置密码:

      bash 复制代码
      mysqld_safe --skip-grant-tables &
      mysql -u root
      UPDATE mysql.user SET authentication_string=PASSWORD('new_pass') WHERE User='root';
      FLUSH PRIVILEGES;

2. 远程连接被拒绝

  • 现象ERROR 1130 (HY000): Host 'xxx' is not allowed to connect
  • 解决
    1. 登录 MySQL 后执行:

      sql 复制代码
      CREATE USER 'user'@'%' IDENTIFIED BY 'password';
      GRANT ALL PRIVILEGES ON *.* TO 'user'@'%';
      FLUSH PRIVILEGES;
    2. 检查防火墙是否开放 3306 端口。


3. 字符集乱码问题

  • 现象 :中文显示为 ???

  • 解决 :修改配置文件 /etc/mysql/my.cnf(Linux/macOS)或 my.ini(Windows):

    ini 复制代码
    [mysqld]
    character-set-server=utf8mb4
    collation-server=utf8mb4_unicode_ci

4. Docker 数据持久化失败

  • 现象:容器重启后数据丢失

  • 解决 :确保启动命令中包含 -v 参数挂载数据卷:

    bash 复制代码
    -v /host/path:/var/lib/mysql

七、各平台卸载方法

Windows

  1. 控制面板 → 卸载程序 → 删除 MySQL 相关组件
  2. 手动删除 C:\Program Files\MySQLC:\ProgramData\MySQL

macOS

bash 复制代码
brew services stop mysql
brew uninstall mysql
sudo rm -rf /usr/local/mysql*

Linux

bash 复制代码
sudo apt purge mysql-server
sudo rm -rf /var/lib/mysql

Docker

bash 复制代码
docker stop mysql-server
docker rm mysql-server
docker volume prune  # 清理数据卷(谨慎操作!)

八、总结

通过本教程,你已掌握:

  1. 多平台安装 MySQL:Windows/macOS/Linux 全覆盖
  2. Docker 容器化部署:快速搭建可移植的数据库环境
  3. 核心故障排查:密码重置、远程访问、字符集配置

下一步建议

  • 学习 SQL 基础语法(SELECT/INSERT/UPDATE/DELETE
  • 使用 MySQL Workbench 进行可视化操作
  • 探索主从复制、备份恢复等高级功能

遇到问题可查阅 MySQL 官方文档 或留言交流! 🐬

相关推荐
Johny_Zhao4 小时前
OpenClaw安装部署教程
linux·人工智能·ai·云计算·系统运维·openclaw
阿白的白日梦17 小时前
winget基础管理---更新/修改源为国内源
windows
chlk1232 天前
Linux文件权限完全图解:读懂 ls -l 和 chmod 755 背后的秘密
linux·操作系统
舒一笑2 天前
Ubuntu系统安装CodeX出现问题
linux·后端
改一下配置文件2 天前
Ubuntu24.04安装NVIDIA驱动完整指南(含Secure Boot解决方案)
linux
深紫色的三北六号2 天前
Linux 服务器磁盘扩容与目录迁移:rsync + bind mount 实现服务无感迁移(无需修改配置)
linux·扩容·服务迁移
SudosuBash2 天前
[CS:APP 3e] 关于对 第 12 章 读/写者的一点思考和题解 (作业 12.19,12.20,12.21)
linux·并发·操作系统(os)
哈基咪怎么可能是AI3 天前
为什么我就想要「线性历史 + Signed Commits」GitHub 却把我当猴耍 🤬🎙️
linux·github
于眠牧北3 天前
MySQL的锁类型,表锁,行锁,MVCC中所使用的临键锁
mysql
pe7er3 天前
macOS 应用无法打开(权限问题)解决方案
macos·mac