← 返回目录

第一章:环境搭建

安装 MySQL 8,配置开发环境

1. 安装 MySQL 8

MySQL 8 是目前使用最广泛的关系型数据库之一,支持所有主流操作系统。根据你的平台选择对应的安装方式。

macOS(Homebrew)

macOS 推荐使用 Homebrew 安装,一条命令搞定:

# 安装 MySQL 8
brew install mysql

# 启动 MySQL 服务
brew services start mysql

# 确认版本
mysql --version

安装完成后,MySQL 默认以无密码的 root 用户运行。建议立即设置 root 密码:

# 运行安全配置向导
mysql_secure_installation

Ubuntu / Debian

Ubuntu/Debian 可以直接从官方源安装:

# 更新包索引
sudo apt update

# 安装 MySQL Server
sudo apt install mysql-server

# 启动 MySQL 服务
sudo systemctl start mysql

# 设置开机自启动
sudo systemctl enable mysql

# 运行安全配置向导
sudo mysql_secure_installation

Windows

Windows 推荐使用官方安装器:

# 方式一:从官网下载 MySQL Installer
# 访问 https://dev.mysql.com/downloads/installer/
# 选择 mysql-installer-community,按向导完成安装

# 方式二:使用 Scoop
scoop install mysql

# 方式三:使用 Chocolatey
choco install mysql

MySQL Installer 提供图形化安装界面,可以同时安装 MySQL Server、Workbench、Shell 等组件,非常适合 Windows 用户。

验证安装

无论哪个平台,安装完成后都应该能看到类似输出:

$ mysql --version
mysql  Ver 8.0.36 for macos14 on arm64 (Homebrew)

注意:MySQL 8 默认使用 caching_sha2_password 认证插件,部分旧版客户端可能不支持。如果连接出错,可以临时切换为 mysql_native_password

ALTER USER 'root'@'localhost' IDENTIFIED WITH mysql_native_password BY 'your_password';

🔄 数据库安装方式对比

数据库 macOS 安装 特点
MySQL brew install mysql 需要启动服务,功能最全
PostgreSQL brew install postgresql 需要启动服务,标准兼容性好
SQLite macOS 自带 零配置,单文件,无需服务

2. 连接 MySQL

安装完成后,使用命令行客户端连接 MySQL 服务器。这是最基本也最常用的连接方式。

命令行连接

# 使用 root 用户连接(会提示输入密码)
mysql -u root -p

# 指定主机和端口
mysql -u root -p -h 127.0.0.1 -P 3306

# 连接并直接执行 SQL
mysql -u root -p -e "SELECT VERSION();"

连接成功后,你会进入 MySQL 交互式命令行,看到 mysql> 提示符。

查看数据库

-- 查看所有数据库
SHOW DATABASES;

-- 输出示例:
-- +--------------------+
-- | Database           |
-- +--------------------+
-- | information_schema |
-- | mysql              |
-- | performance_schema |
-- | sys                |
-- +--------------------+

创建数据库

创建一个使用 utf8mb4 字符集的数据库:

-- 创建数据库,指定字符集和排序规则
CREATE DATABASE mydb CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

-- 查看建库语句
SHOW CREATE DATABASE mydb;

-- 切换到该数据库
USE mydb;

-- 查看当前使用的数据库
SELECT DATABASE();

推荐使用 utf8mb4:utf8mb4 是 MySQL 中真正的 UTF-8 编码,支持 4 字节字符(包括 emoji 表情)。MySQL 的 utf8 实际上是 utf8mb3,只支持 3 字节字符,无法存储 emoji。新建数据库应始终使用 utf8mb4

创建用户与授权

生产环境不建议直接使用 root,应创建专用用户:

-- 创建新用户
CREATE USER 'devuser'@'localhost' IDENTIFIED BY 'secure_password';

-- 授予 mydb 数据库的全部权限
GRANT ALL PRIVILEGES ON mydb.* TO 'devuser'@'localhost';

-- 刷新权限
FLUSH PRIVILEGES;

-- 查看用户权限
SHOW GRANTS FOR 'devuser'@'localhost';

3. 客户端工具

除了命令行之外,有许多图形化工具可以让数据库管理更直观。选择适合自己的工具可以大幅提升开发效率。

⌨️

MySQL CLI

MySQL 自带的命令行工具,安装即可用,适合快速查询和脚本自动化。支持所有 SQL 操作,是最基本的管理方式。

免费 · 跨平台 · 随 MySQL 安装

🔧

MySQL Workbench

Oracle 官方出品的 GUI 工具,支持数据库设计(ER 图)、SQL 编辑器、性能监控、数据迁移等功能。

免费 · 跨平台 · 官方支持

🦫

DBeaver

开源的通用数据库工具,支持 MySQL、PostgreSQL、SQLite、Oracle 等几十种数据库。社区版免费且功能强大。

免费(社区版) · 跨平台 · 多数据库

💡

DataGrip

JetBrains 出品的专业数据库 IDE,智能 SQL 补全、重构、版本控制集成。适合重度数据库开发。

付费 · 跨平台 · JetBrains 生态

工具选择建议:初学者推荐 MySQL CLI + DBeaver 组合。CLI 帮助你熟悉 SQL 语法,DBeaver 提供可视化辅助。随着经验增加,可以尝试 DataGrip 获得更强大的开发体验。

4. 创建第一张表

数据库中的数据存储在表(Table)中。一张表由列(Column)和行(Row)组成,类似 Excel 表格。让我们创建第一张用户表。

建表语句

CREATE TABLE users (
    id INT AUTO_INCREMENT PRIMARY KEY,
    name VARCHAR(100) NOT NULL,
    email VARCHAR(255) UNIQUE NOT NULL,
    age INT DEFAULT 0,
    created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);

逐行解析这条建表语句:

列定义 类型 说明
id INT AUTO_INCREMENT 自增主键,每插入一行自动 +1
name VARCHAR(100) 变长字符串,最多 100 个字符,不允许为空
email VARCHAR(255) UNIQUE 唯一约束,防止重复邮箱
age INT DEFAULT 0 整数,默认值为 0
created_at TIMESTAMP 时间戳,默认插入当前时间

插入数据

-- 插入测试数据
INSERT INTO users (name, email, age) VALUES
    ('张三', 'zhangsan@example.com', 28),
    ('李四', 'lisi@example.com', 32);

-- 查询所有数据
SELECT * FROM users;

执行结果如下:

-- +----+------+----------------------+-----+---------------------+
-- | id | name | email                | age | created_at          |
-- +----+------+----------------------+-----+---------------------+
-- |  1 | 张三 | zhangsan@example.com |  28 | 2026-04-16 10:00:00 |
-- |  2 | 李四 | lisi@example.com     |  32 | 2026-04-16 10:00:00 |
-- +----+------+----------------------+-----+---------------------+

查看表结构

-- 查看表结构
DESC users;

-- 查看建表语句
SHOW CREATE TABLE users;

-- 查看当前数据库所有表
SHOW TABLES;

命名规范:表名和列名建议使用小写字母加下划线(snake_case),如 user_profilescreated_at。避免使用 SQL 保留字作为名称,如 orderselectgroup

5. 本章要点

🛠️ MySQL 安装

macOS 用 brew install mysql,Ubuntu 用 apt install mysql-server,Windows 用 MySQL Installer。安装后运行 mysql_secure_installation 完成安全配置。

🔌 连接方式

使用 mysql -u root -p 连接数据库。推荐创建专用用户,避免直接使用 root。使用 utf8mb4 字符集创建数据库。

🖥️ 客户端工具

CLI 适合快速操作和脚本自动化。DBeaver 免费开源支持多数据库。MySQL Workbench 是官方 GUI 工具。DataGrip 适合专业开发。

📝 基本操作

CREATE DATABASE 创建数据库,CREATE TABLE 创建表,INSERT INTO 插入数据,SELECT 查询数据。SQL 语句以分号结尾。