🐬 MySQL 教程
什么是 MySQL?
MySQL 是世界上最流行的开源关系型数据库管理系统(RDBMS),由瑞典 MySQL AB 公司开发,现在属于 Oracle 公司。MySQL 以其高性能、可靠性和易用性而闻名,被广泛应用于 Web 应用程序开发中。
MySQL 主要特性
- 开源免费:MySQL 社区版完全免费
- 跨平台:支持 Windows、Linux、macOS 等操作系统
- 高性能:优化的 SQL 查询引擎,支持大数据量处理
- 可扩展性:支持集群、复制和分区
- 安全性:提供多层安全保护机制
- 标准兼容:遵循 SQL 标准,易于学习和使用
MySQL 版本对比
📊 MySQL 5.7 vs MySQL 8.x 主要差异
特性 |
MySQL 5.7 |
MySQL 8.x |
默认字符集 |
latin1 |
utf8mb4 |
JSON 支持 |
基础 JSON 类型 |
增强的 JSON 函数 |
窗口函数 |
不支持 |
完全支持 |
CTE(公用表表达式) |
不支持 |
支持递归 CTE |
角色管理 |
不支持 |
支持角色管理 |
🚀 MySQL 8.x 新特性
- 数据字典:统一的事务性数据字典
- 原子 DDL:DDL 语句的原子性执行
- 升级过程:就地升级,无需导出/导入
- 安全性增强:默认身份验证、角色管理
- 性能提升:查询优化器改进、索引优化
- NoSQL 支持:文档存储和 X DevAPI
⚠️ MySQL 5.7 注意事项
生命周期:MySQL 5.7 已于 2023 年 10 月结束扩展支持。建议升级到 MySQL 8.x 版本以获得最新的安全更新和功能。
MySQL 应用场景
- Web 应用:LAMP/LEMP 技术栈的核心组件
- 电子商务:在线商店、支付系统
- 内容管理:CMS 系统、博客平台
- 数据仓库:数据分析和报告系统
- 日志系统:应用程序日志存储和分析
- 游戏开发:玩家数据、游戏状态存储
学习路径建议
- 基础概念:了解关系型数据库基本概念
- 安装配置:在本地环境安装 MySQL
- SQL 语法:掌握基本的 CRUD 操作
- 高级查询:学习连接、子查询、函数等
- 数据库设计:理解范式化和索引优化
- 性能调优:查询优化和服务器配置
- 安全管理:用户权限和数据安全
-- 示例:创建第一个数据库
CREATE DATABASE my_first_db CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;
-- 使用数据库
USE my_first_db;
-- 创建示例表
CREATE TABLE users (
id INT AUTO_INCREMENT PRIMARY KEY,
username VARCHAR(50) NOT NULL UNIQUE,
email VARCHAR(100) NOT NULL,
created_at TIMESTAMP DEFAULT CURRENT_TIMESTAMP
);