MySQL环境安装详细教程(Windows/macOS/Linux)

摘要:本文详细介绍了在Windows、macOS和Linux三大操作系统下安装MySQL数据库的完整流程,帮助开发者快速搭建本地MySQL环境。

一、MySQL安装前准备

  1. 官网下载

    访问MySQL官网 → 选择"Downloads" → 选择"MySQL Community (GPL) Downloads"

  2. 版本选择建议

    • 新手推荐:MySQL 8.0(最新稳定版)

    • 企业兼容:根据需求选择5.7版本

    • 系统对应:

      • Windows选择.msi安装包

      • macOS选择.dmg文件

      • Linux选择对应发行版的Repository

二、Windows系统安装步骤

1. 安装程序

  1. 双击下载的.msi文件

  2. 选择安装类型:

    • Developer Default:默认开发配置

    • Server only:仅安装服务器

    • Custom:自定义安装(推荐)

  3. 选择安装组件:

    • MySQL Server

    • MySQL Workbench(可视化工具)

    • MySQL Shell

2. 配置向导

  1. 选择配置类型:

    • Development Computer(开发环境)

    • Server Computer(生产环境)

    • Dedicated Computer(专用MySQL服务器)

  2. 设置root密码:

    复制代码
    MySQL Root Password: ********
    Repeat Password: ********
  1. 配置Windows服务:

    • 服务名默认MySQL80

    • 建议勾选"Start the MySQL Server at System Startup"

3. 配置环境变量

  1. 右键"此电脑" → 属性 → 高级系统设置 → 环境变量

  2. 在Path中添加

    复制代码
    C:\Program Files\MySQL\MySQL Server 8.0\bin

三、macOS系统安装

方法1:使用Homebrew

复制代码
brew install mysql
brew services start mysql

方法2:官方dmg安装

  1. 双击.dmg文件

  2. 拖动MySQL图标到Applications文件夹

  3. 打开系统偏好设置 → MySQL → Initialize Database

按提示完成:

  1. 设置密码强度策略

  2. 移除匿名用户

  3. 禁止远程root登录

  4. 移除测试数据库

四、Linux(Ubuntu)安装

1. APT安装

复制代码
sudo apt update
sudo apt install mysql-server
  1. 安全配置

    sudo mysql_secure_installation

按提示完成:

  1. 设置密码强度策略

  2. 移除匿名用户

  3. 禁止远程root登录

  4. 移除测试数据库

五、验证安装

复制代码
mysql -u root -p

mysql> SHOW DATABASES;
+--------------------+
| Database           |
+--------------------+
| information_schema |
| mysql              |
| performance_schema |
| sys                |
+--------------------+
4 rows in set (0.00 sec)

六、常见问题解决

1. 安装失败

  • 检查系统位数(32/64位)

  • 确认VC++运行库已安装

  • 查看错误日志:C:\ProgramData\MySQL\MySQL Server 8.0\Data\*.err

2. 忘记root密码

  1. 停止MySQL服务

  2. 使用安全模式启动:

    复制代码
    mysqld --skip-grant-tables
  3. 新窗口登录修改密码

3. 服务无法启动

  • 检查3306端口占用:netstat -ano | findstr :3306

  • 查看错误日志路径:

    复制代码
    mysql> SHOW VARIABLES LIKE 'log_error';

七. 创建一个简单的数据库

复制代码
-- 创建数据库(如果不存在则创建)
CREATE DATABASE IF NOT EXISTS HEROS DEFAULT CHARSET="utf8mb4";
 
-- 使用HEROS数据库
USE HEROS;
 
-- 创建hero表
CREATE TABLE IF NOT EXISTS hero (
    id INT ,
    uname VARCHAR(20),
    gender CHAR(2),
    provenance CHAR(20)
);
 
-- 插入数据
INSERT INTO hero (id, uname, gender, provenance) VALUES
(1, '孙悟空', '男', '《西游记》'),
(2, '林黛玉', '女', '《红楼梦》'),
(3, '武松', '男', '《水浒传》'),
(4, '刘备', '男', '《三国演义》');
相关推荐
哈__1 小时前
从 MySQL 到在线表格:NocoDB 自托管部署、数据导入与远程访问
数据库·mysql
倔强的石头1062 小时前
高可用与无感扩容——分布式时序数据库选型指南
数据库·分布式·时序数据库
91刘仁德9 小时前
MYSQL 事务原理及使用
android·mysql·adb
wxwx_bscxy3229 小时前
NodeJS 高校学业预警系统10551
mysql·node.js·vue·高校学业预警
袋鼠云数栈10 小时前
实时湖仓如何真正做到“数据够新”?
大数据·数据库·人工智能·数据治理
ACP广源盛1392462567310 小时前
M6/M5 Pro Mac mini 端侧 AI 落地@ACP#YLB3116 中端多盘存储扩展在 AI 服务中的机会与应用场景
大数据·网络·数据库·人工智能·嵌入式硬件·macos
ACP广源盛1392462567311 小时前
M6/M5 Pro Mac mini 端侧 AI 新形态@ACP#GSV5800 Serdes 长距离视频传输在 AI 服务中的机会与落地场景
大数据·网络·数据库·人工智能·嵌入式硬件·macos·音视频
倔强的石头_13 小时前
事务边界与批量写入:避免长事务、锁等待和日志压力
数据库
努力努力再努力wz13 小时前
【Redis入门系列】从 KEYS 到 SCAN:渐进式遍历、Cursor 与位反转原理
数据库·redis·缓存
坐吃山猪13 小时前
【多线程】Lock与Condition
大数据·数据库