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, '刘备', '男', '《三国演义》');
相关推荐
笑远6 分钟前
Oracle/MySQL/PostgreSQL 到信创数据库数据同步简介
数据库·python·etl
z263730561121 分钟前
Redis常用数据结构及命令详解:从基础到进阶
数据结构·数据库·redis
我自闭了1 小时前
MySQL索引失效场景
mysql
lqstyle1 小时前
面试必备之mysql索引
后端·mysql·面试
最好玩的游戏IDEA1 小时前
MySQL索引失效的8种情况
数据库
用户4099322502121 小时前
FastAPI 错误处理与自定义错误消息完全指南:构建健壮的 API 应用 🛠️
前端·数据库·后端
PawSQL1 小时前
PawSQL for TDSQL:腾讯云TDSQL数据库性能优化全攻略
数据库·sql·性能优化·腾讯云·pawsql
巴啦啦小魔仙变身1 小时前
Django-ORM-select_related
数据库·python·django·sqlite
字节王德发1 小时前
如何在Django中实现批量覆盖更新的示例
数据库·django·sqlite
qq_13948428822 小时前
springboot433-基于SpringBoot的流浪猫爱心救助系统(源码+数据库+纯前后端分离+部署讲解等)
java·数据库·vue.js·spring boot·后端·maven·intellij-idea