MySQL 支持多平台,下面介绍如何在 Windows、Linux 平台安装 MySQL。
访问 MySQL 官方下载页面(https://dev.mysql.com/downloads/mysql/),选择 Windows 平台的 MSI Installer。建议下载较大的那个安装包(几百MB),它包含了所有必要的组件,不需要额外下载。如下图:

安装过程中需要注意以下几点:
选择安装类型:初学者建议选择 "Server only",只安装数据库服务器。如果你想一并安装图形化管理工具,可以选择 "Full"。
配置root密码:安装向导会提示设置 root 用户的密码。root 是 MySQL 的超级管理员,务必设置一个强度足够的密码并妥善保管(学习环境可以设置一个好记的密码,避免忘记)。
Windows服务:建议勾选 "Configure MySQL Server as a Windows Service",这样 MySQL 会随系统启动而自动运行。
端口号:默认使用3306端口,如果该端口已被占用(比如之前装过 MySQL),可以改为其他端口如 3307。
安装完成后,打开命令提示符,输入以下命令验证安装是否成功:
mysql --version如果看到类似 "mysql Ver 8.0.xxx for Win64" 的输出版本信息,说明安装成功了。
为了在任何目录下都能使用 mysql 命令,需要将 MySQL 的 bin 目录添加到系统环境变量 Path中。
默认安装路径通常是 C:\Program Files\MySQL\MySQL Server 8.x\bin。添加完成后,新开一个命令提示符窗口,输入 mysql --version 测试。
详细教程请参考 Windows 安装 zip 版本的 MySQL8 文章。
在 Linux 服务器上部署 MySQL 更为常见。以下是几种主流发行版的安装方法。
# 更新软件包索引
sudo apt update
# 安装MySQL服务器
sudo apt install mysql-server
# 安装完成后,MySQL会自动启动。检查状态:
sudo systemctl status mysql
# 运行安全脚本,设置root密码等
sudo mysql_secure_installation# 下载MySQL官方Yum源
wget https://dev.mysql.com/get/mysql80-community-release-el7-11.noarch.rpm
# 安装Yum源
sudo rpm -Uvh mysql80-community-release-el7-11.noarch.rpm
# 安装MySQL服务器
sudo yum install mysql-community-server
# 启动服务
sudo systemctl start mysqld
# 查看初始密码(CentOS安装后会生成临时密码)
sudo grep 'temporary password' /var/log/mysqld.log
# 修改root密码
mysql -u root -p
# 登录后执行:
ALTER USER 'root'@'localhost' IDENTIFIED BY '你的新密码';如果你本地已经装了 Docker(不会 Docker 请学习 Docker 教程),这是最省事的安装方式:
# 拉取MySQL 8.0镜像
docker pull mysql:8.0
# 运行容器
docker run --name mysql8 \
-e MYSQL_ROOT_PASSWORD=你的密码 \
-p 3306:3306 \
-d mysql:8.0
# 进入容器内部
docker exec -it mysql8 bash
# 登录MySQL
mysql -u root -pDocker 方式的优势是干净、隔离,不想用了直接删除容器就行,不会影响主机环境。
实战如下:
(1)拉取镜像,笔者这里已经拉取过了,因此非常快,如果没有拉取过,需要等待镜像下载完成
[root@centos9 ~]# docker pull mysql:8.0
8.0: Pulling from library/mysql
Digest: sha256:7dcddc01f13bab2f15cde676d44d01f61fc9f99fe7785e86196dfc07d358ae2b
Status: Image is up to date for mysql:8.0
docker.io/library/mysql:8.0(2)查看镜像信息,如下:
[root@centos9 ~]# docker images | grep mysql
mysql 8.0 6cd09145362d 2 months ago 799MB(3)创建容器,这里采用最简单的方式进行创建
[root@centos9 ~]# docker run --name mysql8 \
-e MYSQL_ROOT_PASSWORD=aaaaaa \
-p 3306:3306 \
-d mysql:8.0
db3dfe8b69e569dfd96085644b4b4204c5bf680f58af24780cc63bc588531740(4)查看创建的新容器
[root@centos9 ~]# docker ps | grep mysql
db3dfe8b69e5 mysql:8.0 "docker-entrypoint.s…" 10 seconds ago Up 10 seconds 0.0.0.0:3306->3306/tcp, :::3306->3306/tcp, 33060/tcp mysql8到这里,mysql8 的镜像就创建完成了。
(5)进入容器,容器内部提供了 mysql 命令,可以使用该命令连接 mysql
[root@centos9 ~]# docker exec -it mysql8 bash
bash-5.1#成功进入容器,可以继续实现后续的连接 MySQL 服务器的操作了。
安装完成后,我们可以使用 mysql 客户端工具连接服务器(docker 安装方式需要进入到容器内部才能执行 mysql 命令,进入容器内部 docker exec -it mysql8 bash)。
下面是连接 mysql 的命令语法:
# 基本连接语法
mysql -u 用户名 -p
# 输入密码后进入 MySQL 命令行界面
# 或者直接在命令行中指定密码(不推荐,历史记录会暴露密码)
mysql -u root -p你的密码
# 连接远程服务器
mysql -h 服务器地址 -P 端口号 -u 用户名 -p
# 示例:连接IP为192.168.1.100的MySQL服务器
mysql -h 192.168.1.100 -P 3306 -u root -p示例:
进入到 Docker 容器内部,如果不是 Docker,可以忽略。如果是 Windows / Linux 进入命令行:
[root@centos9 ~]# docker exec -it mysql8 bash
bash-5.1#查看 mysql 的版本信息,验证 MySQL 是否可用:
bash-5.1# mysql --version
mysql Ver 8.0.46 for Linux on x86_64 (MySQL Community Server - GPL)使用 mysql 命令登录到 mysql,如下:
bash-5.1# mysql -u root -p
Enter password: # 注意,这里需要输入密码成功登录后,会看到如下提示:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is 9
Server version: 8.0.46 MySQL Community Server - GPL
Copyright (c) 2000, 2026, Oracle and/or its affiliates.
Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>注意,“mysql>”就是 MySQL 的命令提示符,表示等待输入SQL语句。
在 MySQL 命令行中,除了执行 SQL 语句,还有一些实用的快捷命令,查看 mysql 中的数据库、表等信息:
(1)show databases 查看当前有哪些数据库,例如:
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
+--------------------+
4 rows in set (0.00 sec)(2)CREATE DATABASE 创建数据库,例如:
mysql> create database testdb;
Query OK, 1 row affected (0.00 sec)
mysql> show databases;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
| testdb |
+--------------------+
5 rows in set (0.00 sec)(3)USE testdb 切换到某个数据库,例如:
mysql> use testdb; # 切换到 testdb 数据库
Database changed
mysql> use mysql; # 再次切换到 mysql 数据库
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A
Database changed(4)SHOW TABLES 查看当前数据库中有哪些表,例如:
mysql> show tables;
+------------------------------------------------------+
| Tables_in_mysql |
+------------------------------------------------------+
| columns_priv |
| component |
| db |
...
| time_zone_transition |
| time_zone_transition_type |
| user |
+------------------------------------------------------+
38 rows in set (0.00 sec)(5)EXIT 或 QUIT 推出 MySQL 命令行,或者按 Ctrl+D (Linux/Mac) / Ctrl+C (Windows),例如:
mysql> exit;
Bye
bash-5.1#
# 或者
mysql> quit;
Bye
bash-5.1#注意:SQL 语句以分号“;”结尾表示语句结束,按回车才会执行。如果只按回车没写分号,MySQL会认为语句还没写完,会继续等待输入。例如:将 show databases; 语句分为三行。
mysql> show
-> databases
-> ;
+--------------------+
| Database |
+--------------------+
| information_schema |
| mysql |
| performance_schema |
| sys |
| testdb |
+--------------------+
5 rows in set (0.00 sec)命令行操作虽然高效,但对于初学者来说,图形化工具更直观。推荐几款常用的 MySQL 管理工具:
MySQL Workbench:官方出品,功能全面,完全免费。包含数据库设计、SQL开发、服务器管理等功能。缺点是界面略显老旧,启动较慢。
Navicat:付费软件,但功能非常强大,界面美观。支持连接多种数据库(MySQL、PostgreSQL、SQLite、Oracle 等),数据传输、同步、备份等功能一应俱全。
DBeaver:开源免费,基于 Java 开发,跨平台。功能接近 Navicat,社区版已经足够日常使用。
DataGrip:JetBrains 出品,智能提示做得非常好,适合开发者。收费但学生可以免费申请。
HeidiSQL:Windows 平台上的轻量级免费工具,体积小巧但功能齐全。
对于学习阶段,推荐安装 MySQL Workbench 或 DBeaver,两者都完全免费且功能足够。下面将使用 DBeaver 连接到 MySQL:
1、打开 DBeaver,点击新建连接按钮,选择 MySQL 数据库。如果没有安装点击链接 https://dbeaver.io/download/ 下载安装,可以选择 exe 或者便携版 zip 包,下载解压就可以使用。

在弹出的连接信息框中输入MySQL服务的主机地址、端口、账号和密码,如下图:

然后点击“测试连接”,如果是第一次连接到 MySQL 服务器,会提示下载 JDBC 驱动,直接下载即可。此时连接,抛出了如下错误:

这个报错不是网络不通,是 MySQL8.0 新版 JDBC 驱动安全限制。可以修改数据库,或者在 DBeaver 设置即可,下面教你如果通过设置 DBeaver 解决该问题:

再次点击“测试连接”,效果如下图:

恭喜,连接成功了,后续所有学习均将在 DBeaver 下面进行,这对学习非常方便。
MySQL安装后有一些配置建议调整,以便更好地使用。
MySQL 8.0 默认使用 utf8mb4 字符集,这很好。但如果你安装的是 5.7或更早版本,建议修改配置文件确保使用 utf8mb4(因为 mysql 的 utf8 不是完整的,导致表情符号不能存储,而 utf8mb4 才是完整的 UTF8 编码),配置方式如下:
如果是 Docker 容器安装的 MySQL,使用 docker exec -it mysql8 bash 进入到容器,在 /etc 下面可以找到 my.cnf。
找到 my.cnf(Linux)或 my.ini(Windows)配置文件,在 [mysqld] 段落下添加:
[mysqld]
character-set-server=utf8mb4
collation-server=utf8mb4_unicode_ci修改后重启 MySQL 服务生效。
默认情况下 MySQL 使用系统时区。如果你希望使用北京时间,可以修改配置:
[mysqld]
default_time_zone='+8:00'或者在连接时指定:
mysql -u root -p --default-character-set=utf8mb4 --default-time-zone='+8:00'更多 MySQL 知识,请阅读后续章节。